Compare commits

...

160 commits

Author SHA1 Message Date
Alexander Koblov
488fedd852 FIX: Viewer - wrong selection when text contains a tab character and horizontal scroll is enabled
(cherry picked from commit 2aea141aff)
2026-02-15 11:55:24 +03:00
Alexander Koblov
f9454e6fe9 FIX: Zip - remove a partial archive on cancel (fixes #1260)
(cherry picked from commit f2eb7513c8)
2026-02-14 15:33:27 +03:00
Alexander Koblov
1975616ccf FIX: Copy image data to the target when source and target are different objects
(cherry picked from commit 506b6b0d74)
2026-02-14 15:33:27 +03:00
rich2014
f4b6255763 UPD: Avoid unnecessary conversions in uGraphics.BitmapConvert()
(cherry picked from commit d4b78d952e)
2026-02-14 15:33:27 +03:00
rich2014
8dcb8c24b8 FIX: the potential byte order incompatibility issue when viewed as Graphics (eg. transparent PNG) on macOS
(cherry picked from commit 0952d72006)
2026-02-14 15:33:26 +03:00
Alexander Koblov
7bcaa88910 FIX: Lazarus 4.99 compatibility
(cherry picked from commit 039946e768)
(cherry picked from commit fcf07a7ebb)
(cherry picked from commit 44c05b6a65)
2026-02-13 23:40:50 +03:00
Alexander Koblov
2ff18e0097 FIX: Crash on editing icon file name in the file associations (fixes #2731)
(cherry picked from commit 32c34dc006)
2026-02-07 15:35:32 +03:00
Alexander Koblov
c79663b6da UPD: Prepare GTK3 support
(cherry picked from commit 284a5aab24)
2026-02-07 15:35:32 +03:00
Alexander Koblov
766869254d UPD: Merge changes from master branch 2026-02-07 14:03:58 +03:00
Alexander Koblov
14b48dffd8 FIX: Drag and drop format priority (fixes #2740)
(cherry picked from commit 86b2d918bb)
2026-02-07 00:41:24 +03:00
Alexander Koblov
04d30631ea FIX: Open local help files with space in the path (Windows)
(cherry picked from commit 6c9a21c2c7)
2026-01-31 19:16:15 +03:00
Alexander Koblov
3a1a549f33 UPD: Version number 2026-01-26 23:54:07 +03:00
Alexander Koblov
c3485d21ba ADD: Warning header to long name alert message
UPD: Display long name alert message under Windows only (useless in other systems)

(cherry picked from commit 1697f71867)
2026-01-26 23:52:36 +03:00
rich2014
8685e668f4 FIX: the issue that TFile.MacOSSpecific may be not loaded on macOS, introduced @c1cfc8493
(cherry picked from commit 80c74dd049)
2026-01-26 23:52:27 +03:00
Alexander Koblov
d6e348a3cf FIX: Remove obsolete workaround (fixes #2726)
(cherry picked from commit 293a827834)
2026-01-26 23:51:58 +03:00
rich2014
7f6ab71353 FIX: file relocate issue in FileView (eg. iCloud Drive)
(cherry picked from commit c3d6a09ac6)
2026-01-25 13:01:12 +03:00
rich2014
8f628c3ddd FIX: filename in Hint in FileView (eg. iCloud Drive)
(cherry picked from commit ddb9a6c2b0)
2026-01-25 13:01:11 +03:00
rich2014
4f8ab152bf FIX: the issue of frmMain losing focus in extreme cases, it can now recover focus automatically
(cherry picked from commit 8a36e69eba)
2026-01-25 13:00:42 +03:00
Alexander Koblov
231a73fe2c FIX: FTP - save connection with implicit FTPS (fixes #2717)
(cherry picked from commit ec27554fad)
2026-01-22 17:50:42 +03:00
Alexander Koblov
9da0ff587f UPD: Korean language file (fixes #2711) 2026-01-17 19:23:35 +03:00
Alexander Koblov
5c41ed8c32 FIX: Disable main menu shortcuts when Alt+Letter keys are used somewhere (fixes #1327)
(cherry picked from commit 7991af0a06)
(cherry picked from commit a445ba431c)
2026-01-17 18:48:16 +03:00
Alexander Koblov
582e625e8c FIX: Zip - extract Unix symbolic links under Windows (fixes #2659)
(cherry picked from commit 0524bcd4e8)
2026-01-17 18:47:48 +03:00
Alexander Koblov
22609014dc ADD: CreateSymLinkUnix function
(cherry picked from commit 53a3a51976)
2026-01-17 18:47:47 +03:00
Alexander Koblov
9a24fea069 UPD: Enable Chinese online help
(cherry picked from commit 694b14cf43)
2026-01-17 18:47:06 +03:00
Alexander Koblov
8f46f21913 UPD: Version number 2026-01-13 19:08:08 +03:00
Alexander Koblov
1eac2e755a FIX: SetFileTime parameters (fixes #2697)
(cherry picked from commit 9c80e25bb4)
2026-01-13 19:03:34 +03:00
Alexander Koblov
c7aca4280c FIX: GetFileIndexFromCursor function result (fixes #2699)
(cherry picked from commit 8fbde876e5)
2026-01-13 19:03:34 +03:00
Alexander Koblov
946341b395 FIX: Revision number 2026-01-11 14:23:47 +03:00
Alexander Koblov
0a1a59b713 UPD: Disable logs
This reverts commit 799541d798.
2026-01-11 14:09:55 +03:00
Alexander Koblov
e56735c8b6 FIX: Compilation for non macOS
(cherry picked from commit 8e147eeefc)
2026-01-11 13:35:48 +03:00
rich2014
5990bf7cf4 UPD #2695: speeding up by macOS property lazy loading on macOS
(cherry picked from commit c1cfc84933)
2026-01-11 13:35:48 +03:00
rich2014
4b00a15507 UPD: determine whether to display icons in the menu by gIconsInMenus in TfrmDiffer and TfrmEditor
(cherry picked from commit f56d2b3219)
2026-01-11 13:35:47 +03:00
rich2014
0076740438 UPD: remove reference to CocoaTextEdits base on the new version of Lazaurs
(cherry picked from commit da0410a472)
2026-01-11 13:35:27 +03:00
rich2014
a73a1fc198 UPD: better prompt in Map Network Drive dialog
(cherry picked from commit 4acde0cbe7)
2026-01-11 13:34:29 +03:00
rich2014
ed1bafc083 ADD: default hotkey ⌘+W for cm_CloseTab in Main on macOS
(cherry picked from commit a2518d930f)
2026-01-11 13:32:53 +03:00
rich2014
1c7d0113ef UPD: the buttons can be enabled or disabled based on FileSource on macOS
(cherry picked from commit 0bb904d006)
2026-01-11 13:32:11 +03:00
rich2014
99ae5e5725 UPD: the Backward/Forward buttons can be enabled or disabled based on history
(cherry picked from commit d0d51b6474)
2026-01-11 13:32:10 +03:00
rich2014
a76f871895 UPD: update zh_TW
(cherry picked from commit c6e5bf89db)
2026-01-11 13:32:10 +03:00
rich2014
a44a0f33d7 UPD: update zh_CN
(cherry picked from commit 87e20b5615)
2026-01-11 13:32:09 +03:00
rich2014
15ab016a03 ADD: i18n for Backward/Forward Button
(cherry picked from commit 1a99e510c8)
2026-01-11 13:32:09 +03:00
rich2014
27b840438e ADD: default hotkeys for cm_ViewHistoryPrev / cm_ViewHistoryNext in Main on macOS
(cherry picked from commit 8f5977e63b)
2026-01-11 13:32:08 +03:00
rich2014
06fb86f6c5 ADD: add ShortCut String to tips for Backward/Forward button on macOS
(cherry picked from commit dd3d54ca31)
2026-01-11 13:32:08 +03:00
rich2014
7c249235e7 ADD: Modern Form Style - Backward/Forward button for macOS 11+
(cherry picked from commit 6208c4a832)
2026-01-11 13:32:08 +03:00
rich2014
806aef74ea UPD: Lazarus/StrToNSString() to (Native)Cocoa/StringToNSString()
(cherry picked from commit 6f46526451)
2026-01-11 13:31:38 +03:00
rich2014
7e0bede37d UPD: improve error and exception logging on macOS
(cherry picked from commit 54d6fd516b)
2026-01-11 13:31:38 +03:00
rich2014
82ed95dc78 UPD: remove circle references between uDarwinFinderModel and uDarwinFile
(cherry picked from commit cff28911e5)
2026-01-11 13:31:37 +03:00
rich2014
6c77f56231 UPD: more file error log on macOS
(cherry picked from commit f6dcf0fd46)
2026-01-11 13:31:37 +03:00
rich2014
88c0970c63 UPD #2675: improve searching in subpath in iCloud Drive
(cherry picked from commit 900342d648)
2026-01-11 13:31:36 +03:00
rich2014
92682e662f ADD #2675: better searching in iCloud Drive
(cherry picked from commit a971639d45)
2026-01-11 13:31:36 +03:00
rich2014
e340380e91 FIX #2675: the Start Path in Search Dialog in some FileSource (ie. TMountedFileSource)
(cherry picked from commit e8ec4ecb01)
2026-01-11 13:31:36 +03:00
rich2014
d6537aa308 UPD: refactor in uDarwinClipboard
(cherry picked from commit aff2d61421)
2026-01-11 13:31:35 +03:00
rich2014
d2069e04e8 UPD: remove circle references between uClipboard and uDarwinClipboard
(cherry picked from commit d6f468ddd4)
2026-01-11 13:31:35 +03:00
rich2014
4b44c1d3b2 UPD: refactoring macOS related from uClipboard to uDarwinClipboard
(cherry picked from commit 59a8e395ed)
2026-01-11 13:31:35 +03:00
rich2014
799541d798 UPD: logs for debugging on macOS
(cherry picked from commit 5cac3685fd)
2026-01-11 13:31:34 +03:00
rich2014
7d30980004 UPD: refactoring to eliminate duplicate doCellEnhancedDraw() in FileView
(cherry picked from commit e69d6ee4c2)
2026-01-11 13:31:34 +03:00
rich2014
58146aeb7a UPD: refactoring to eliminate duplicate calcTextHeight() in FileView
(cherry picked from commit 5fd8496570)
2026-01-11 13:31:34 +03:00
rich2014
25dd8763f7 UPD: refactoring to eliminate duplicate doFileSourceDrawCell() in FileView
(cherry picked from commit cc00605fa5)
2026-01-11 13:31:33 +03:00
rich2014
5015b769f5 UPD: refactoring to eliminate duplicate onDrawCell() in FileView
(cherry picked from commit 3fa8359330)
2026-01-11 13:31:33 +03:00
rich2014
7d9592a473 FIX: the decoration issue by adding multiColumns to the Grid.
(cherry picked from commit 1f48c04e20)
2026-01-11 13:31:33 +03:00
rich2014
08061758bf UPD: minor optimizations and cleanup on macOS
(cherry picked from commit 5e32ec839b)
2026-01-11 13:31:32 +03:00
rich2014
573b3b4476 UPD: refactoring to eliminate duplicate code in FileView
(cherry picked from commit 5cfe18488d)
2026-01-11 13:30:29 +03:00
rich2014
cd530f376c UPD: abstract decoration related to ConvertToDecorationRect()
(cherry picked from commit cfb5e4862c)
2026-01-11 13:30:28 +03:00
rich2014
893a5284cc UPD: refactoring common code to uFileViewBaseGrid
(cherry picked from commit f7628a0bdc)
2026-01-11 13:30:28 +03:00
rich2014
4005d9c175 UPD: refactor calcTextHeight in uThumbFileView
(cherry picked from commit d7ef000c3f)
2026-01-11 13:30:28 +03:00
rich2014
ae3435cb18 ADD: in ThumbsFileView, support downloading by clicking the download icon in iCloud Drive
(cherry picked from commit ef11c19b3a)
2026-01-11 13:30:27 +03:00
rich2014
19dda06685 UPD: display Finder Tags and other decorations in different areas depending on the FileView
(cherry picked from commit 07993f1073)
2026-01-11 13:30:27 +03:00
rich2014
0b2a5c9adb ADD: initial support for displaying Finder tags and iCloud download icon in ThumbsFileView
(cherry picked from commit e89f669e14)
2026-01-11 13:30:27 +03:00
rich2014
c4328dcf56 UPD: simplify OnDrawCell related base on TFileSourceUIParams
(cherry picked from commit 52a699fbd7)
2026-01-11 13:30:26 +03:00
rich2014
c862dc324d UPD: simplify OnDrawCell related in FileView
(cherry picked from commit 9fac3ef5e8)
2026-01-11 13:30:26 +03:00
rich2014
df65250e9a UPD: improve the adaptability of setting OnDrawCell related to FileView on macOS
(cherry picked from commit 50f1403445)
2026-01-11 13:30:26 +03:00
rich2014
52352af405 UPD: more robust error log on macOS
(cherry picked from commit b22a7b989f)
2026-01-11 13:30:25 +03:00
rich2014
aa260df7bf FIX: the issue in TFileView.calcFileHashKey() in flatview mode on macOS
(cherry picked from commit e21165673b)
2026-01-11 13:30:11 +03:00
rich2014
ef07355cdc UPD: refactoring to eliminate duplicate code in TFileSystemWatcherImpl.handleFSEvent()
(cherry picked from commit e4c57d8571)
2026-01-11 13:30:11 +03:00
rich2014
4304e2ca9f UPD: refactoring common watcher related from uiCloudDrive to uDarwinDC
(cherry picked from commit f3254ee10b)
2026-01-11 13:30:10 +03:00
rich2014
6406ddc06b UPD: simplify theme mode determining based on the new Lazarus/Cocoa version
(cherry picked from commit 2f33d5a553)
2026-01-11 13:30:10 +03:00
rich2014
d7d9a112fc UPD: simplify theme related based on the new Lazarus/Cocoa version
(cherry picked from commit c97c74fb02)
2026-01-11 13:30:09 +03:00
rich2014
8444ae5b45 UPD: remove some unused unit references
(cherry picked from commit ef6fdd2e70)
2026-01-11 13:29:59 +03:00
rich2014
d038a65732 UPD: eliminate the dependency on fmain in uDarwinFileView
(cherry picked from commit 7437b9b09f)
2026-01-11 13:29:59 +03:00
rich2014
d926194210 DEL: remove uAppleMagnifiedModeFix
(cherry picked from commit 9c54344b94)
2026-01-11 13:29:58 +03:00
rich2014
7285477a3e UPD: unify darwin related naming
(cherry picked from commit fbd2aa3bc8)
2026-01-11 13:29:58 +03:00
rich2014
73a39fe186 DEL: remove uMyDarwin
(cherry picked from commit 32c962239f)
2026-01-11 13:29:57 +03:00
rich2014
10e79ae4d2 UPD: refactoring serviceMenu from uMyDarwin to uDarwinApplication
(cherry picked from commit 4d0a1966cf)
2026-01-11 13:29:57 +03:00
rich2014
9e9d35536b UPD: refactoring onMainMenuCreate from uMyDarwin to uDarwinApplication
(cherry picked from commit 7f80cfcb70)
2026-01-11 13:29:57 +03:00
rich2014
d962387327 UPD: comments for TDarwinAarch64Statfs
(cherry picked from commit 693f887652)
2026-01-11 13:29:55 +03:00
rich2014
74ba54f044 UPD: refactoring FileView from uMyDarwin to uDarwinFileView
(cherry picked from commit 116e7cebe7)
2026-01-11 13:29:55 +03:00
rich2014
2eac8cbd4e UPD: refactoring Panel from uMyDarwin to uDarwinPanel
(cherry picked from commit b75ac1e82f)
2026-01-11 13:29:29 +03:00
rich2014
403f05ee97 UPD: refactoring Statfs Fix from uMyDarwin to uDarwinIO
(cherry picked from commit 8c5274e6ff)
2026-01-11 13:29:28 +03:00
rich2014
2979f4c02e UPD: refactoring Application related from uMyDarwin to uDarwinApplication again
(cherry picked from commit ec2bf46f7f)
2026-01-11 13:29:28 +03:00
rich2014
f67ba5b23f UPD: refactoring File related from uMyDarwin to uDarwinFileUtil again
(cherry picked from commit 30b6ae5006)
2026-01-11 13:29:28 +03:00
rich2014
49df0f028b UPD: refactoring File related from uMyDarwin to uDarwinFileUtil
(cherry picked from commit 83d2cfa181)
2026-01-11 13:29:15 +03:00
rich2014
5a756255a0 UPD: rename Driver to Drive in i18n
(cherry picked from commit 241b97596f)
2026-01-11 13:29:14 +03:00
rich2014
cf125457ab UPD: rename Driver to Drive
(cherry picked from commit 136b57b087)
2026-01-11 13:29:14 +03:00
rich2014
bacc7e0209 UPD: refactoring uDarwinSimpleFSWatch from uMyDarwin
(cherry picked from commit 7a76524516)
2026-01-11 13:29:14 +03:00
rich2014
c4704010a9 UPD: ignore duplicate theme change notification on macOS
(cherry picked from commit 90b43d186a)
2026-01-11 13:29:13 +03:00
rich2014
f1cf91cbfe ADD: support theme changed notify caused by Color Options Dialog on macOS
(cherry picked from commit 1f383b0c61)
2026-01-11 13:29:13 +03:00
rich2014
b27dc1413f ADD: support dynamic update download icon based on the theme in iCloud Drive on macOS
(cherry picked from commit 2c903ca7c6)
2026-01-11 13:29:13 +03:00
rich2014
f373a483c5 UPD: support multi theme observer on macOS
(cherry picked from commit d30198ece1)
2026-01-11 13:29:12 +03:00
rich2014
248e208b3f UPD: in Dark mode, improve the visibility of download icon in iCloud Drive on macOS
(cherry picked from commit 37ac87a2d7)
2026-01-11 13:28:59 +03:00
rich2014
caeb2c0412 ADD: uDarwinImageUtil on macOS
(cherry picked from commit babc01608c)
2026-01-11 13:28:59 +03:00
rich2014
f210dfd570 UPD: refactor uDarwinFileUtil
(cherry picked from commit 62bff9e3f8)
2026-01-11 13:28:58 +03:00
rich2014
2bbad28a10 UPD: refactoring uDarwinFileUtil from uMyDarwin
(cherry picked from commit 5e3f93306b)
2026-01-11 13:28:58 +03:00
rich2014
7817376af2 UPD: refactor uDarwinApplication
(cherry picked from commit ab2648bd75)
2026-01-11 13:28:58 +03:00
rich2014
5d5eea982f UPD: refactoring uDarwinApplication from uMyDarwin
(cherry picked from commit 2f2c660fb5)
2026-01-11 13:28:57 +03:00
rich2014
dc586fd143 FIX: memory leak in ContextMenu/Services on macOS
(cherry picked from commit bf7876dfb4)
2026-01-11 13:28:57 +03:00
rich2014
b70e58ecf2 FIX: in the Font Options, an incorrect save prompt may appear if the initial font size is 0
it's because the initial value is 0 when calculating the fingerprint, and it has been set to the minimum value after initialization.

(cherry picked from commit 0ae14457a9)
2026-01-11 13:28:57 +03:00
rich2014
93b30699b3 FIX: the issue of hashKey in TSearchResultFileSource (files in TSearchResultFileSource do not have a unified parent path)
(cherry picked from commit c8e9765bb1)
2026-01-11 13:28:56 +03:00
rich2014
3e538488ba UPD: add doSearchFiles() to eliminate duplicate code related to Finder Search on macOS
(cherry picked from commit d33483ada3)
2026-01-11 13:28:45 +03:00
rich2014
789b0b8d8c UPD: replace onSearchFinderTagComplete() with darwinSearchResultHandler
(cherry picked from commit 8ddadf237f)
2026-01-11 13:28:45 +03:00
rich2014
3d1ba0bc97 UPD: refactor names related to Finder Search on macOS
(cherry picked from commit db6a60377d)
2026-01-11 13:28:44 +03:00
rich2014
4beaf343cc ADD: support searchScopes for Smart Folder on macOS
(cherry picked from commit 61e91c79bc)
2026-01-11 13:28:44 +03:00
rich2014
2c773d51a6 ADD: Smart Folder to "gotoFolder" Menu on macOS
(cherry picked from commit b4b0064ae6)
2026-01-11 13:28:44 +03:00
rich2014
8f4ce1c150 ADD: support opening Smart Folders on macOS
(cherry picked from commit 2102e7b543)
2026-01-11 13:28:43 +03:00
Alexander Koblov
a2ea7d16f2 UPD: FTP - language files
(cherry picked from commit 9dad38408a)
2026-01-08 13:16:33 +03:00
Alexander Koblov
b3ef410b11 ADD: FTP - more strings translation
(cherry picked from commit a46139cea0)
2026-01-08 13:16:33 +03:00
Alexander Koblov
590bc53da8 UPD: Dutch language file
(cherry picked from commit 0575cff75e)
2026-01-08 13:11:31 +03:00
rich2014
6debd08913 FIX: fix the issue of mismatching to “/” when using a non-FileSystem FileSource
(cherry picked from commit 3d4dc7d6fc)
2026-01-08 13:11:22 +03:00
Alexander Koblov
245d280e84 UPD: Version info 2026-01-07 14:34:11 +03:00
Alexander Koblov
e5068339e2 FIX: Verify checksum - assign OnCreate event (fixes #1894)
(cherry picked from commit 3e09c8c56b)
2026-01-07 14:24:00 +03:00
Alexander Koblov
a5d255e5a9 ADD: Verify checksum - use log font, close by enter key (issue #1894)
(cherry picked from commit ee29c08428)
2026-01-07 14:24:00 +03:00
rich2014
60053c3b48 UPD: in MultiRename, when the regular expression is correct, edFind is restored to clDefault (which is better than clWindow/clWindowText)
(cherry picked from commit 6d25dc8bcc)
2026-01-07 14:24:00 +03:00
Alexander Koblov
495461a90e UPD: Verify checksum - hide right margin
(cherry picked from commit f7911094b3)
2026-01-07 14:23:59 +03:00
Alexander Koblov
205656bc90 ADD: FTP - custom icons
(cherry picked from commit 3ebc9c7d7e)
2026-01-07 14:23:23 +03:00
Alexander Koblov
bae8539463 FIX: EDateOutOfRange exception with negative Unix time (fixes #2666)
(cherry picked from commit c32db48c03)
2026-01-05 16:37:24 +03:00
Alexander Koblov
d9c97911ad UPD: Greek language file
(cherry picked from commit 66cfdbda08)
2026-01-05 16:37:14 +03:00
Alexander Koblov
76111e43d1 FIX: Use normalized strings when compare file names with wildcard under macOS (fixes #2674)
(cherry picked from commit 3a6893dc51)
2026-01-05 16:36:17 +03:00
Alexander Koblov
d34fd09897 UPD: Release workflow
(cherry picked from commit 190825e653)
2026-01-05 16:35:44 +03:00
Alexander Koblov
d8ef884c53 UPD: Korean language file (fixes #2665) 2026-01-03 14:10:40 +03:00
rich2014
f76501d6d8 UPD: update zh_TW
(cherry picked from commit c791c0e801)
2025-12-13 15:49:29 +03:00
rich2014
10db0c1025 UPD: update zh_CN
(cherry picked from commit c0b5cc3370)
2025-12-13 15:49:28 +03:00
j2969719
a8e7241734 UPD: C SDK (#2634)
(cherry picked from commit 4abf44f32a)
2025-12-13 15:48:41 +03:00
Alexander Koblov
facc368769 FIX: Paste real files from clipboard (fixes #2651)
(cherry picked from commit a9b86231be)
2025-12-13 12:08:40 +03:00
Alexander Koblov
df59dce716 FIX: Paste directory from clipboard (issue #2647)
(cherry picked from commit f88cdb4f0c)
2025-12-13 12:08:33 +03:00
rich2014
eb40b80116 FIX: the issue of arbitrary truncation in multibyte encoding in IsInPath(), the root cause of #2631
(cherry picked from commit b10bd5609f)
2025-12-13 12:07:40 +03:00
Alexander Koblov
2bd7e55427 FIX: Hang when read from a named pipe (fixes #2639)
(cherry picked from commit 8c370fd8ea)
2025-12-06 20:49:50 +03:00
Alexander Koblov
00d66222cd FIX: Remove read-only temporary files (fixes #2632)
(cherry picked from commit 228802bb5d)
2025-12-02 18:36:55 +03:00
Alexander Koblov
c874c6c6b8 FIX: Double plugin initialization (issue #2616)
(cherry picked from commit 2688fd8499)
2025-12-02 18:36:54 +03:00
Alexander Koblov
1acfcb815a FIX: Crash with empty file name (fixes #2631)
(cherry picked from commit ca615d4c84)
2025-12-02 18:36:54 +03:00
Alexander Koblov
7c470d69d8 FIX: Use normalized strings when compare file names under macOS (fixes #1981)
(cherry picked from commit f27b7f8526)
2025-12-02 18:36:54 +03:00
rich2014
fdbcaeca93 UDP: Fine-tuning the color table for Finder Tags in Menu
(cherry picked from commit aa4b99f3a1)
2025-12-02 18:36:53 +03:00
rich2014
b1450f98a6 UDP: Fine-tuning the color table for Finder Tags in Editor
(cherry picked from commit 1d4dbdd445)
2025-12-02 18:36:53 +03:00
rich2014
8053b7bbe2 UDP: don't display colorless Finder Tags in FileView, more consistency with Finder
(cherry picked from commit 4d8e71ad11)
2025-12-02 18:36:53 +03:00
rich2014
7c54166b5b UPD: add special decoration Finder Tag colors
(cherry picked from commit 6b806a8026)
2025-12-02 18:36:52 +03:00
rich2014
5916efbadf UPD: refactor finder tag color names
(cherry picked from commit cc02b71009)
2025-12-02 18:36:29 +03:00
rich2014
6352e4b356 UPD: remove dotFinderTagNSColors in uDarwinFinderModelUtil
(cherry picked from commit 29f146f1e3)
2025-12-02 18:36:29 +03:00
rich2014
7049f44be2 UPD: apply menu color for FinderTag in Tag Editor, more consistent with Finder
(cherry picked from commit 332700d57f)
2025-12-02 18:36:29 +03:00
rich2014
1f6d0cb324 UPD: apply menu color for FinderTag in Search Menu on macOS
(cherry picked from commit efbe003174)
2025-12-02 18:36:28 +03:00
rich2014
c76ab078a8 UPD: apply menu color for FinderTag in Context Menu, more consistent with Finder
(cherry picked from commit 124c8b7f02)
2025-12-02 18:36:28 +03:00
rich2014
20bc61bb40 ADD: add colors for FinderTag in Menus
(cherry picked from commit b3866c95c8)
2025-12-02 18:36:28 +03:00
rich2014
b8bab1ffd9 UDP: remove unnecessary unit
(cherry picked from commit 172c054ce7)
2025-12-02 18:36:27 +03:00
Alexander Koblov
9a5d59a705 FIX: DCDateTimeUtils - arithmetic overflow (fixes #2627)
(cherry picked from commit 16e9b1d647)
2025-12-02 18:36:10 +03:00
Jozef Gaal
5b46ef24b5 UPD: Slovak language (#2628)
(cherry picked from commit 06fe73ec27)
2025-11-30 13:11:01 +03:00
Alexander Koblov
8b958beb63 UPD: German language file
(cherry picked from commit 542cbb925a)
2025-11-30 13:11:01 +03:00
Alexander Koblov
be0efbde24 UPD: Argon2 default parameters
(cherry picked from commit 79cc65f739)
2025-11-30 13:11:00 +03:00
Alexander Koblov
bcc703ebec ADD: Calculate key transformation at least one time
(cherry picked from commit 15c0c27e79)
2025-11-30 13:11:00 +03:00
Alexander Koblov
e92a362e11 UPD: Language files
(cherry picked from commit 50af183b70)
2025-11-30 13:10:59 +03:00
Alexander Koblov
705f2e9370 UPD: Use 'main' password instead 'master'
(cherry picked from commit 9a0044e532)
2025-11-30 13:10:59 +03:00
dependabot[bot]
5b4fb6c1dd UPD: Bump actions/checkout from 5 to 6 (#2625)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 6d3060aaf2)
2025-11-30 13:10:58 +03:00
rich2014
5b8e7ac9d5 UPD: improve the postion of Sharing Service Picker Popover on macOS 13+
(cherry picked from commit 57123c9be6)
2025-11-30 13:10:58 +03:00
rich2014
935e5a1974 UPD: restore to min 11.0 on macOS-Intel (caused by the github compilation environment, DC itself supports macOS 10.11)
(cherry picked from commit 8c0b8c1497)
2025-11-30 13:10:58 +03:00
Alexander Koblov
7cd02aff8c UPD: German language file
(cherry picked from commit 0b7aecc0de)
2025-11-30 13:10:57 +03:00
147 changed files with 5390 additions and 3047 deletions

View file

@ -106,7 +106,7 @@ build_doublecmd
export CPU_TARGET=x86_64 export CPU_TARGET=x86_64
export TARGET=x86_64-apple-darwin export TARGET=x86_64-apple-darwin
# Set minimal Mac OS X target version # Set minimal Mac OS X target version
export MACOSX_DEPLOYMENT_TARGET=10.11 export MACOSX_DEPLOYMENT_TARGET=11.0
build_unrar build_unrar
build_doublecmd build_doublecmd

View file

@ -107,6 +107,6 @@ build_doublecmd
# Set processor architecture # Set processor architecture
export CPU_TARGET=x86_64 export CPU_TARGET=x86_64
# Set minimal Mac OS X target version # Set minimal Mac OS X target version
export MACOSX_DEPLOYMENT_TARGET=10.11 export MACOSX_DEPLOYMENT_TARGET=11.0
build_doublecmd build_doublecmd

View file

@ -11,7 +11,7 @@ concurrency:
jobs: jobs:
build-mac: build-mac:
runs-on: macos-13 runs-on: macos-14
steps: steps:
- name: Install Free Pascal - name: Install Free Pascal
uses: doublecmd/lazarus-install@mac uses: doublecmd/lazarus-install@mac
@ -19,13 +19,15 @@ jobs:
lazarus-version: "stable" lazarus-version: "stable"
- name: Get Lazarus source - name: Get Lazarus source
uses: actions/checkout@v5 uses: actions/checkout@v6
with: with:
repository: 'fpc/Lazarus' repository: 'fpc/Lazarus'
ref: 'fixes_4' ref: 'fixes_4'
- name: Build and install Lazarus - name: Build and install Lazarus
run: make all install run: |
make all
sudo make install
- name: Create Lazarus config - name: Create Lazarus config
run: | run: |
@ -34,7 +36,7 @@ jobs:
sudo sed -i -e "s|_PPCARCH_|fpc|g; s|/Developer/lazarus|/usr/local/share/lazarus|g" /etc/lazarus/environmentoptions.xml sudo sed -i -e "s|_PPCARCH_|fpc|g; s|/Developer/lazarus|/usr/local/share/lazarus|g" /etc/lazarus/environmentoptions.xml
- name: Checkout source - name: Checkout source
uses: actions/checkout@v5 uses: actions/checkout@v6
with: with:
fetch-depth: 0 fetch-depth: 0

View file

@ -25,7 +25,7 @@ jobs:
lazarus-version: "stable" lazarus-version: "stable"
- name: Get Lazarus source - name: Get Lazarus source
uses: actions/checkout@v5 uses: actions/checkout@v6
with: with:
repository: 'fpc/Lazarus' repository: 'fpc/Lazarus'
@ -41,7 +41,7 @@ jobs:
sudo sed -i -e "s|_PPCARCH_|fpc|g; s|/Developer/lazarus|/usr/local/share/lazarus|g" /etc/lazarus/environmentoptions.xml sudo sed -i -e "s|_PPCARCH_|fpc|g; s|/Developer/lazarus|/usr/local/share/lazarus|g" /etc/lazarus/environmentoptions.xml
- name: Checkout source - name: Checkout source
uses: actions/checkout@v5 uses: actions/checkout@v6
with: with:
fetch-depth: 0 fetch-depth: 0
@ -69,7 +69,7 @@ jobs:
lazarus-version: "stable" lazarus-version: "stable"
- name: Checkout source - name: Checkout source
uses: actions/checkout@v5 uses: actions/checkout@v6
with: with:
fetch-depth: 0 fetch-depth: 0

View file

@ -22,7 +22,8 @@
unit DCDateTimeUtils; unit DCDateTimeUtils;
{$mode objfpc}{$H+} {$mode objfpc}
{$H+}{$R-}{$Q-}
interface interface
@ -327,8 +328,20 @@ begin
end; end;
{$ELSEIF DEFINED(UNIX)} {$ELSEIF DEFINED(UNIX)}
begin begin
Result.Sec:= Int64((FileTime - UnixWinEpoch) div 10000000); if (FileTime >= UnixWinEpoch) then
Result.NanoSec:= Int64((FileTime - UnixWinEpoch) mod 10000000) * 100; begin
Result.Sec:= Int64((FileTime - UnixWinEpoch) div 10000000);
Result.NanoSec:= Int64((FileTime - UnixWinEpoch) mod 10000000) * 100;
end
else begin
Result.Sec:= (Int64(FileTime) - Int64(UnixWinEpoch)) div 10000000;
if (Result.Sec = 0) then
Result.NanoSec:= 0
else begin
Result.NanoSec:= (Int64(UnixWinEpoch - FileTime) mod 10000000) * 100;
if (Result.NanoSec > 0) then Result.NanoSec:= 1000000000 - Result.NanoSec;
end;
end;
end; end;
{$ENDIF} {$ENDIF}
@ -583,31 +596,10 @@ end;
function DateTimeToUnixFileTime(DateTime : TDateTime): TUnixFileTime; function DateTimeToUnixFileTime(DateTime : TDateTime): TUnixFileTime;
{$IF DEFINED(UNIX)} {$IF DEFINED(UNIX)}
var var
AUnixTime: TTime; AUnixTime: TFileTimeEx;
ATime: TTimeStruct;
Year, Month, Day: Word;
Hour, Minute, Second, MilliSecond: Word;
begin begin
DecodeDate(DateTime, Year, Month, Day); AUnixTime:= DateTimeToUnixFileTimeEx(DateTime);
DecodeTime(DateTime, Hour, Minute, Second, MilliSecond); Result:= TUnixFileTime(AUnixTime.Sec);
ATime.tm_isdst:= -1;
ATime.tm_year:= Year - 1900;
ATime.tm_mon:= Month - 1;
ATime.tm_mday:= Day;
ATime.tm_hour:= Hour;
ATime.tm_min:= Minute;
ATime.tm_sec:= Second;
AUnixTime:= fpMkTime(@ATime);
if (AUnixTime = -1) then
Result:= 0
else begin
Result:= TUnixFileTime(AUnixTime);
end;
end; end;
{$ELSE} {$ELSE}
var var
@ -626,9 +618,6 @@ var
Year, Month, Day: Word; Year, Month, Day: Word;
Hour, Minute, Second, MilliSecond: Word; Hour, Minute, Second, MilliSecond: Word;
begin begin
if DateTime < UnixEpoch then
raise EDateOutOfRange.Create(DateTime);
DecodeDate(DateTime, Year, Month, Day); DecodeDate(DateTime, Year, Month, Day);
DecodeTime(DateTime, Hour, Minute, Second, MilliSecond); DecodeTime(DateTime, Hour, Minute, Second, MilliSecond);
@ -647,6 +636,7 @@ begin
if (AUnixTime = -1) then if (AUnixTime = -1) then
Result:= TFileTimeExNull Result:= TFileTimeExNull
else begin else begin
if (AUnixTime < 0) then MilliSecond:= 0;
Result:= TFileTimeEx.Create(AUnixTime, MilliSecond * 1000 * 1000); Result:= TFileTimeEx.Create(AUnixTime, MilliSecond * 1000 * 1000);
end; end;
end; end;

View file

@ -43,6 +43,7 @@ const
IO_REPARSE_TAG_LX_SYMLINK = $A000001D; IO_REPARSE_TAG_LX_SYMLINK = $A000001D;
const const
LX_SYMLINK_HEADER_SIZE = 4;
REPARSE_DATA_HEADER_SIZE = 8; REPARSE_DATA_HEADER_SIZE = 8;
MOUNT_POINT_HEADER_SIZE = 8; MOUNT_POINT_HEADER_SIZE = 8;
FILE_DOES_NOT_EXIST = DWORD(-1); FILE_DOES_NOT_EXIST = DWORD(-1);
@ -119,6 +120,13 @@ function CreateHardLink(const AFileName, ALinkName: UnicodeString): Boolean;
@returns(The function returns @true if successful, @false otherwise) @returns(The function returns @true if successful, @false otherwise)
} }
function ReadSymLink(const aSymlinkFileName: UnicodeString; out aTargetFileName: UnicodeString): Boolean; function ReadSymLink(const aSymlinkFileName: UnicodeString; out aTargetFileName: UnicodeString): Boolean;
{en
Creates a WSL/Cygwin symbolic link.
@param(aTargetFileName The name of the existing file)
@param(aSymlinkFileName The name of the symbolic link)
@returns(The function returns @true if successful, @false otherwise)
}
function CreateSymLinkUnix(const aTargetFileName: String; const aSymlinkFileName: UnicodeString): Boolean;
implementation implementation
@ -357,6 +365,55 @@ begin
end; end;
end; end;
function CreateSymLinkUnix(const aTargetFileName: String; const aSymlinkFileName: UnicodeString): Boolean;
var
hDevice: THandle;
dwLastError: DWORD;
nInBufferSize: DWORD;
dwPathBufferSize: DWORD;
lpBytesReturned: DWORD = 0;
lpInBuffer: PReparseDataBuffer;
begin
hDevice:= CreateFileW(PWideChar(aSymlinkFileName),
GENERIC_WRITE, 0, nil, CREATE_NEW,
FILE_FLAG_OPEN_REPARSE_POINT, 0);
if hDevice = INVALID_HANDLE_VALUE then Exit(False);
dwPathBufferSize:= Length(aTargetFileName);
nInBufferSize:= REPARSE_DATA_HEADER_SIZE + LX_SYMLINK_HEADER_SIZE + dwPathBufferSize;
lpInBuffer:= GetMem(nInBufferSize);
ZeroMemory(lpInBuffer, nInBufferSize);
with lpInBuffer^, lpInBuffer^.LxSymlinkReparseBuffer do
begin
FileType:= 2; // symbolic link
ReparseTag:= IO_REPARSE_TAG_LX_SYMLINK;
ReparseDataLength:= LX_SYMLINK_HEADER_SIZE + dwPathBufferSize;
CopyMemory(@PathBuffer[0], @aTargetFileName[1], Length(aTargetFileName));
end;
Result:= DeviceIoControl(hDevice, // handle to file or directory
FSCTL_SET_REPARSE_POINT, // dwIoControlCode
lpInBuffer, // input buffer
nInBufferSize, // size of input buffer
nil, // lpOutBuffer
0, // nOutBufferSize
lpBytesReturned, // lpBytesReturned
nil); // OVERLAPPED structure
// File system does not support reparse points
// Create a normal file with the link target inside
if (not Result) and (GetLastError = ERROR_INVALID_FUNCTION) then
begin
Result:= (FileWrite(hDevice, aTargetFileName[1], dwPathBufferSize) = dwPathBufferSize);
if Result then SetFileAttributesW(PWideChar(aSymlinkFileName), FILE_ATTRIBUTE_SYSTEM);
end;
if not Result then dwLastError:= GetLastError;
FreeMem(lpInBuffer);
CloseHandle(hDevice);
if not Result then
begin
DeleteFileW(PWideChar(aSymlinkFileName));
SetLastError(dwLastError);
end;
end;
function ReadSymLink(const aSymlinkFileName: UnicodeString; out aTargetFileName: UnicodeString): Boolean; function ReadSymLink(const aSymlinkFileName: UnicodeString; out aTargetFileName: UnicodeString): Boolean;
var var
L: Integer; L: Integer;

View file

@ -49,6 +49,7 @@ const
fmOpenSync = $10000; fmOpenSync = $10000;
fmOpenDirect = $20000; fmOpenDirect = $20000;
fmOpenNoATime = $40000; fmOpenNoATime = $40000;
fmOpenSpecial = $80000;
{$IF DEFINED(UNIX)} {$IF DEFINED(UNIX)}
ERROR_NOT_SAME_DEVICE = ESysEXDEV; ERROR_NOT_SAME_DEVICE = ESysEXDEV;
@ -56,6 +57,8 @@ const
ERROR_NOT_SAME_DEVICE = Windows.ERROR_NOT_SAME_DEVICE; ERROR_NOT_SAME_DEVICE = Windows.ERROR_NOT_SAME_DEVICE;
{$ENDIF} {$ENDIF}
FileNameNormalized = {$IFDEF DARWIN}True{$ELSE}False{$ENDIF};
type type
TFileMapRec = record TFileMapRec = record
FileHandle : System.THandle; FileHandle : System.THandle;
@ -182,6 +185,8 @@ function MapFile(const sFileName : String; out FileMapRec : TFileMapRec) : Boole
} }
procedure UnMapFile(var FileMapRec : TFileMapRec); procedure UnMapFile(var FileMapRec : TFileMapRec);
function NormalizeFileName(const Source: String): String;
{en {en
Convert from console to UTF8 encoding. Convert from console to UTF8 encoding.
} }
@ -335,6 +340,9 @@ uses
{$ENDIF} {$ENDIF}
{$IF DEFINED(UNIX)} {$IF DEFINED(UNIX)}
Unix, dl, Unix, dl,
{$ENDIF}
{$IF DEFINED(DARWIN)}
LazFileUtils,
{$ENDIF} {$ENDIF}
DCStrUtils, LazUTF8; DCStrUtils, LazUTF8;
@ -845,6 +853,17 @@ begin
end; end;
{$ENDIF} {$ENDIF}
function NormalizeFileName(const Source: String): String; inline;
{$IF DEFINED(DARWIN)}
begin
Result:= GetDarwinNormalizedFileName(Source);
end;
{$ELSE}
begin
Result:= Source;
end;
{$ENDIF}
function ConsoleToUTF8(const Source: String): RawByteString; function ConsoleToUTF8(const Source: String): RawByteString;
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
begin begin
@ -868,12 +887,14 @@ begin
if (Mode and fmOpenNoATime <> 0) then if (Mode and fmOpenNoATime <> 0) then
begin begin
if (Result <> feInvalidHandle) then if (Result <> feInvalidHandle) then
SetFileTime(Result, nil, @ft, @ft) SetFileTime(Result, nil, @ft, nil)
else if GetLastError = ERROR_ACCESS_DENIED then else if GetLastError = ERROR_ACCESS_DENIED then
Result := mbFileOpen(FileName, Mode and not fmOpenNoATime); Result := mbFileOpen(FileName, Mode and not fmOpenNoATime);
end; end;
end; end;
{$ELSE} {$ELSE}
var
Info: BaseUnix.Stat;
begin begin
repeat repeat
Result:= fpOpen(UTF8ToSys(FileName), AccessModes[Mode and 3] or Result:= fpOpen(UTF8ToSys(FileName), AccessModes[Mode and 3] or
@ -882,6 +903,18 @@ begin
if Result <> feInvalidHandle then if Result <> feInvalidHandle then
begin begin
FileCloseOnExec(Result); FileCloseOnExec(Result);
if (Mode and fmOpenSpecial = 0) then
begin
if fpFStat(Result, Info) = 0 then
begin
if FPS_ISFIFO(Info.st_mode) then
begin
FileClose(Result);
errno:= ESysEINVAL;
Exit(feInvalidHandle);
end;
end;
end;
{$IF DEFINED(DARWIN)} {$IF DEFINED(DARWIN)}
if (Mode and (fmOpenSync or fmOpenDirect) <> 0) then if (Mode and (fmOpenSync or fmOpenDirect) <> 0) then
begin begin
@ -1605,8 +1638,16 @@ begin
Result := mbFileGetAttr(Path) <> faInvalidAttributes; Result := mbFileGetAttr(Path) <> faInvalidAttributes;
end; end;
function mbCompareFileNames(const FileName1, FileName2: String): Boolean; inline; function mbCompareFileNames(const FileName1, FileName2: String): Boolean;
{$IF DEFINED(WINDOWS) OR DEFINED(DARWIN)} {$IF DEFINED(DARWIN)}
begin
if (Length(FileName1) = 0) or (Length(FileName2) = 0) then
Result:= (FileName1 = FileName2)
else begin
Result:= CompareFilenamesIgnoreCase(FileName1, FileName2) = 0;
end;
end;
{$ELSEIF DEFINED(MSWINDOWS)}
begin begin
Result:= (UnicodeCompareText(CeUtf8ToUtf16(FileName1), CeUtf8ToUtf16(FileName2)) = 0); Result:= (UnicodeCompareText(CeUtf8ToUtf16(FileName1), CeUtf8ToUtf16(FileName2)) = 0);
end; end;

View file

@ -42,12 +42,14 @@ type
private private
FList: PStringHashItemList; FList: PStringHashItemList;
FCount: Integer; FCount: Integer;
fNormalize: Boolean;
fCaseSensitive: Boolean; fCaseSensitive: Boolean;
function BinarySearch(HashValue: Cardinal): Integer; function BinarySearch(HashValue: Cardinal): Integer;
function CompareString(const Low, Key: String): Boolean; function CompareString(const Low, Key: String): Boolean;
function CompareValue(const Value1, Value2: Cardinal): Integer; function CompareValue(const Value1, Value2: Cardinal): Integer;
procedure FindHashBoundaries(HashValue: Cardinal; StartFrom: Integer; out First, Last: Integer); procedure FindHashBoundaries(HashValue: Cardinal; StartFrom: Integer; out First, Last: Integer);
function GetData(const S: String): Pointer; function GetData(const S: String): Pointer;
procedure SetNormalize(AValue: Boolean);
procedure SetCaseSensitive(const Value: Boolean); procedure SetCaseSensitive(const Value: Boolean);
procedure Delete(Index: Integer); procedure Delete(Index: Integer);
procedure SetData(const S: String; const AValue: Pointer); procedure SetData(const S: String; const AValue: Pointer);
@ -66,6 +68,7 @@ type
function Remove(const S: String): Integer; function Remove(const S: String): Integer;
function Remove(const S: String; Data: Pointer): Integer; function Remove(const S: String; Data: Pointer): Integer;
procedure FindBoundaries(StartFrom: Integer; out First, Last: Integer); procedure FindBoundaries(StartFrom: Integer; out First, Last: Integer);
property Normalize: Boolean read fNormalize write SetNormalize;
property CaseSensitive: Boolean read fCaseSensitive write SetCaseSensitive; property CaseSensitive: Boolean read fCaseSensitive write SetCaseSensitive;
property Count: Integer read FCount; property Count: Integer read FCount;
property Data[const S: String]: Pointer read GetData write SetData; default; property Data[const S: String]: Pointer read GetData write SetData; default;
@ -75,7 +78,7 @@ type
implementation implementation
uses uses
LazUTF8; LazUTF8, DCOSUtils;
{ TStringHashListUtf8 } { TStringHashListUtf8 }
@ -97,6 +100,10 @@ begin
else begin else begin
Text:= UTF8LowerCase(S); Text:= UTF8LowerCase(S);
end; end;
if fNormalize then
begin
Text:= NormalizeFileName(Text);
end;
New(Item); New(Item);
Val:= HashOf(Text); Val:= HashOf(Text);
Item^.HashValue := Val; Item^.HashValue := Val;
@ -180,13 +187,20 @@ var
begin begin
P:= Pointer(Low); P:= Pointer(Low);
Len:= Length(Low); Len:= Length(Low);
if fCaseSensitive then if not fNormalize then
begin begin
Result:= (Len = Length(Key)); LKey:= Key;
if Result then Result:= (CompareByte(P^, Pointer(Key)^, Len) = 0);
end end
else begin else begin
LKey:= UTF8LowerCase(Key); LKey:= NormalizeFileName(Key);
end;
if fCaseSensitive then
begin
Result:= (Len = Length(LKey));
if Result then Result:= (CompareByte(P^, Pointer(LKey)^, Len) = 0);
end
else begin
LKey:= UTF8LowerCase(LKey);
Result:= (Len = Length(LKey)); Result:= (Len = Length(LKey));
if Result then Result:= (CompareByte(P^, Pointer(LKey)^, Len) = 0); if Result then Result:= (CompareByte(P^, Pointer(LKey)^, Len) = 0);
end; end;
@ -232,6 +246,18 @@ begin
Add(S,AValue); Add(S,AValue);
end; end;
procedure TStringHashListUtf8.SetNormalize(AValue: Boolean);
begin
if fNormalize <> AValue then
begin
if Count > 0 then
begin
raise EListError.Create(lrsListMustBeEmpty);
end;
fNormalize := AValue;
end;
end;
destructor TStringHashListUtf8.Destroy; destructor TStringHashListUtf8.Destroy;
begin begin
Clear; Clear;
@ -249,6 +275,10 @@ begin
else begin else begin
Text:= UTF8LowerCase(S); Text:= UTF8LowerCase(S);
end; end;
if fNormalize then
begin
Text:= NormalizeFileName(Text);
end;
Value:= HashOf(Text); Value:= HashOf(Text);
Result:= BinarySearch(Value); Result:= BinarySearch(Value);
if (Result <> -1) and not CompareString(Text, FList[Result]^.Key) then if (Result <> -1) and not CompareString(Text, FList[Result]^.Key) then
@ -275,6 +305,10 @@ begin
else begin else begin
Text:= UTF8LowerCase(S); Text:= UTF8LowerCase(S);
end; end;
if fNormalize then
begin
Text:= NormalizeFileName(Text);
end;
Value:= HashOf(Text); Value:= HashOf(Text);
Result:= BinarySearch(Value); Result:= BinarySearch(Value);
if (Result <> -1) and if (Result <> -1) and
@ -335,7 +369,8 @@ end;
constructor TStringHashListUtf8.Create(CaseSensitivity: boolean); constructor TStringHashListUtf8.Create(CaseSensitivity: boolean);
begin begin
fCaseSensitive:=CaseSensitivity; fNormalize:= FileNameNormalized;
fCaseSensitive:= CaseSensitivity;
inherited Create; inherited Create;
end; end;

View file

@ -752,12 +752,12 @@ begin
sBasePath := IncludeTrailingPathDelimiter(sBasePath); sBasePath := IncludeTrailingPathDelimiter(sBasePath);
BasePathLength := Length(sBasePath); BasePathLength := UTF8Length(sBasePath);
PathToCheckLength := Length(sPathToCheck); PathToCheckLength := UTF8Length(sPathToCheck);
if PathToCheckLength > BasePathLength then if PathToCheckLength > BasePathLength then
begin begin
if mbCompareFileNames(Copy(sPathToCheck, 1, BasePathLength), sBasePath) then if mbCompareFileNames(UTF8Copy(sPathToCheck, 1, BasePathLength), sBasePath) then
begin begin
if AllowSubDirs then if AllowSubDirs then
Result := True Result := True
@ -766,10 +766,10 @@ begin
// Additionally check if the remaining path is a relative path. // Additionally check if the remaining path is a relative path.
// Look for a path delimiter in the middle of the filepath. // Look for a path delimiter in the middle of the filepath.
sPathToCheck := Copy(sPathToCheck, 1 + BasePathLength, sPathToCheck := UTF8Copy(sPathToCheck, 1 + BasePathLength,
PathToCheckLength - BasePathLength); PathToCheckLength - BasePathLength);
DelimiterPos := Pos(DirectorySeparator, sPathToCheck); DelimiterPos := UTF8Pos(DirectorySeparator, sPathToCheck);
// If no delimiter was found or it was found at then end (directories // If no delimiter was found or it was found at then end (directories
// may end with it), then the 'sPathToCheck' is in 'sBasePath'. // may end with it), then the 'sPathToCheck' is in 'sBasePath'.
@ -784,7 +784,7 @@ begin
(((PathToCheckLength = BasePathLength) and (((PathToCheckLength = BasePathLength) and
(mbCompareFileNames(sPathToCheck, sBasePath))) or (mbCompareFileNames(sPathToCheck, sBasePath))) or
((PathToCheckLength = BasePathLength - 1) and ((PathToCheckLength = BasePathLength - 1) and
(mbCompareFileNames(Copy(sBasePath, 1, PathToCheckLength), sPathToCheck)))); (mbCompareFileNames(UTF8Copy(sBasePath, 1, PathToCheckLength), sPathToCheck))));
end; end;
function ExtractDirLevel(const sPrefix, sPath: String): String; function ExtractDirLevel(const sPrefix, sPath: String): String;

View file

@ -138,12 +138,11 @@ type
implementation implementation
uses uses
CRC, Laz2_XMLRead; CRC, Laz2_XMLRead, LCLVersion;
//==== TSynUniSyn ============================================================ //==== TSynUniSyn ============================================================
constructor TSynUniSyn.Create(AOwner: TComponent); constructor TSynUniSyn.Create(AOwner: TComponent);
begin begin
inherited Create(AOwner);
Info := TSynInfo.Create; Info := TSynInfo.Create;
Info.History := TStringList.Create; Info.History := TStringList.Create;
Info.Sample := TStringList.Create; Info.Sample := TStringList.Create;
@ -157,6 +156,8 @@ begin
fEol := False; fEol := False;
fPrEol := False; fPrEol := False;
fCurrentRule := MainRules; fCurrentRule := MainRules;
inherited Create(AOwner);
end; end;
destructor TSynUniSyn.Destroy; destructor TSynUniSyn.Destroy;
@ -702,6 +703,9 @@ begin
ReadXMLFile(Xml, TargetStream, [xrfPreserveWhiteSpace]); ReadXMLFile(Xml, TargetStream, [xrfPreserveWhiteSpace]);
try try
LoadFromXml(Xml); LoadFromXml(Xml);
{$if lcl_fullversion >= 4990000}
DefaultFilter:= GetDefaultFilter;
{$endif}
finally finally
Xml.Free; Xml.Free;
end; end;
@ -725,6 +729,9 @@ procedure TSynUniSyn.SaveToStream(Stream: TStream; Rule: TSynRule);
var var
StreamWriter: TStreamWriter; StreamWriter: TStreamWriter;
begin begin
{$if lcl_fullversion >= 4990000}
SetDefaultFilter(DefaultFilter);
{$endif}
StreamWriter := TStreamWriter.Create(Stream); StreamWriter := TStreamWriter.Create(Stream);
with StreamWriter do begin with StreamWriter do begin
WriteTag(0, 'UniHighlighter'); WriteTag(0, 'UniHighlighter');

View file

@ -2915,21 +2915,31 @@ var
function XYPos2AdrText: PtrInt; function XYPos2AdrText: PtrInt;
var var
i: PtrInt; J: Integer;
Dos: Boolean; Dos: Boolean;
s, ss: String;
Len: Integer = 0;
charWidth: Integer; charWidth: Integer;
textWidth: Integer; textWidth: Integer;
len: Integer = 0; tmpPosition: PtrInt;
CharLenInBytes: Integer; CharLenInBytes: Integer;
s: String;
ss: String;
begin begin
ss := ''; ss := '';
i := StartLine; tmpPosition := StartLine;
Dos:= FEncoding in ViewerEncodingOem;
while i < EndLine do if (Mode = vcmText) and (FHPosition > 0) then
begin begin
s := GetNextCharAsUtf8(i, CharLenInBytes); for J:= 1 to FHPosition do
begin
GetNextCharAsAscii(tmpPosition, CharLenInBytes);
tmpPosition += CharLenInBytes;
end;
end;
Dos:= FEncoding in ViewerEncodingOem;
while tmpPosition < EndLine do
begin
s := GetNextCharAsUtf8(tmpPosition, CharLenInBytes);
if CharLenInBytes = 0 then if CharLenInBytes = 0 then
Break; Break;
@ -2938,18 +2948,12 @@ var
begin begin
if s = #9 then if s = #9 then
begin begin
s := StringOfChar(' ', FTabSpaces - len mod FTabSpaces); s := StringOfChar(' ', FTabSpaces - Len mod FTabSpaces);
len := len + (FTabSpaces - len mod FTabSpaces); Len := Len + (FTabSpaces - Len mod FTabSpaces);
end end
else else
Inc(len); // Assume there is one character after conversion Inc(Len); // Assume there is one character after conversion
// (otherwise use Inc(len, UTF8Length(s))). // (otherwise use Inc(Len, UTF8Length(s))).
if (Mode = vcmText) and (len <= FHPosition) then
begin
i := i + CharLenInBytes;
Continue;
end;
if (CharLenInBytes = 1) and (s[1] < ' ') then if (CharLenInBytes = 1) and (s[1] < ' ') then
begin begin
@ -2969,11 +2973,11 @@ var
else else
CharSide := csRight; CharSide := csRight;
Exit(i); Exit(tmpPosition);
end; end;
end; end;
i := i + CharLenInBytes; tmpPosition := tmpPosition + CharLenInBytes;
end; end;
CharSide := csBefore; CharSide := csBefore;

View file

@ -1 +1,2 @@
ru ru
zh

View file

@ -3,7 +3,7 @@
export REVISION_INC=$2/units/dcrevision.inc export REVISION_INC=$2/units/dcrevision.inc
# DC revision number # DC revision number
export REVISION=$(git -C $1 rev-list --count HEAD) export REVISION=$(git -C $1 rev-list --count 934bef9..HEAD)
export COMMIT=$(git -C $1 rev-parse --short HEAD) export COMMIT=$(git -C $1 rev-parse --short HEAD)
# Update dcrevision.inc # Update dcrevision.inc

View file

@ -3343,7 +3343,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3351,8 +3351,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Галоўны пароль"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3363,7 +3365,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3379,7 +3381,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3387,7 +3389,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10826,11 +10828,13 @@ msgstr "Не выкарыстоўваць \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Па назве загаду; Па гарачых клавішах (групамі); Па гарачых клавішах (па адной)" msgstr "Па назве загаду; Па гарачых клавішах (групамі); Па гарачых клавішах (па адной)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10868,6 +10872,17 @@ msgstr "Спіс акон \"Пошук файлаў\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Скасаваць вылучэнне" msgstr "Скасаваць вылучэнне"
@ -10988,6 +11003,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11006,13 +11041,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11164,11 +11199,13 @@ msgstr "Выняць"
msgid "Extract here..." msgid "Extract here..."
msgstr "Распакаваць сюды..." msgstr "Распакаваць сюды..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12077,11 +12114,12 @@ msgid "Wipe directory %s"
msgstr "Сцерці каталог %s" msgstr "Сцерці каталог %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Галоўны пароль" msgstr "Галоўны пароль"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Калі ласка, ўвядзіце галоўны пароль:" msgstr "Калі ласка, ўвядзіце галоўны пароль:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3439,7 +3439,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3447,8 +3447,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Главна парола"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3459,7 +3461,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3475,7 +3477,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3483,7 +3485,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11298,11 +11300,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11340,6 +11344,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Признак за смяна на избора" msgstr "Признак за смяна на избора"
@ -11460,6 +11475,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11478,13 +11513,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11636,11 +11671,13 @@ msgstr "Изваждане"
msgid "Extract here..." msgid "Extract here..."
msgstr "Извличане тук..." msgstr "Извличане тук..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12537,11 +12574,12 @@ msgid "Wipe directory %s"
msgstr "Унищожаване на папка „%s‟" msgstr "Унищожаване на папка „%s‟"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Главна парола" msgstr "Главна парола"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "" msgstr ""
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3666,7 +3666,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3674,8 +3674,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Contrasenya mestra"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3686,7 +3688,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3702,7 +3704,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3710,7 +3712,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11775,11 +11777,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11817,6 +11821,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Màscara a deselecció" msgstr "Màscara a deselecció"
@ -11936,6 +11951,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11954,13 +11989,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -12111,11 +12146,13 @@ msgstr "Expulsa"
msgid "Extract here..." msgid "Extract here..."
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -13013,11 +13050,12 @@ msgid "Wipe directory %s"
msgstr "" msgstr ""
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Contrasenya mestra" msgstr "Contrasenya mestra"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Per favor, introduiu la contrasenya mestra:" msgstr "Per favor, introduiu la contrasenya mestra:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3353,7 +3353,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3361,8 +3361,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Hlavní heslo"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3373,7 +3375,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3389,7 +3391,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3397,7 +3399,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10848,11 +10850,13 @@ msgstr "Bez zkratky s \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "podle názvu příkazu;podle zkratky (seskupeno);podle zkratky (jedna na řádek)" msgstr "podle názvu příkazu;podle zkratky (seskupeno);podle zkratky (jedna na řádek)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10890,6 +10894,17 @@ msgstr "Seznam hledacích oken"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Maska zrušení výběru" msgstr "Maska zrušení výběru"
@ -11010,6 +11025,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11028,13 +11063,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11186,11 +11221,13 @@ msgstr "Vysunout"
msgid "Extract here..." msgid "Extract here..."
msgstr "Rozbalit zde..." msgstr "Rozbalit zde..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12101,11 +12138,12 @@ msgid "Wipe directory %s"
msgstr "Nevratně smaže adresář %s" msgstr "Nevratně smaže adresář %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hlavní heslo" msgstr "Hlavní heslo"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Prosíme zadejte hlavní heslo:" msgstr "Prosíme zadejte hlavní heslo:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3565,7 +3565,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3573,8 +3573,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Hovedadgangskode"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3585,7 +3587,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3601,7 +3603,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3609,7 +3611,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11887,11 +11889,13 @@ msgstr "Ingen genvej med \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Efter kommando;Efter genvejstast (grupperet);Efter genvejstast (en pr. række)" msgstr "Efter kommando;Efter genvejstast (grupperet);Efter genvejstast (en pr. række)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11935,6 +11939,17 @@ msgstr "Oversigt over \"Find filer\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Indskrænk valg" msgstr "Indskrænk valg"
@ -12056,6 +12071,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -12074,13 +12109,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -12234,11 +12269,13 @@ msgstr "Skub ud"
msgid "Extract here..." msgid "Extract here..."
msgstr "Udpak her..." msgstr "Udpak her..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -13158,11 +13195,12 @@ msgid "Wipe directory %s"
msgstr "Sikker sletning af mappe %s" msgstr "Sikker sletning af mappe %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hovedadgangskode" msgstr "Hovedadgangskode"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Indtast venligst hovedadgangskoden:" msgstr "Indtast venligst hovedadgangskoden:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: Double Commander 1.1.0 alpha\n" "Project-Id-Version: Double Commander 1.1.0 alpha\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-15 11:15+0300\n" "POT-Creation-Date: 2022-11-15 11:15+0300\n"
"PO-Revision-Date: 2025-10-04 20:41+0200\n" "PO-Revision-Date: 2025-11-26 11:39+0100\n"
"Last-Translator: ㋡ <braass@mail.de>\n" "Last-Translator: ㋡ <braass@mail.de>\n"
"Language-Team: Deutsch <braass@mail.de>\n" "Language-Team: Deutsch <braass@mail.de>\n"
"Language: de\n" "Language: de\n"
@ -3334,58 +3334,58 @@ msgstr "Ode&r vordefinierten Auswahltyp wählen:"
#: tfrmmasterkey.btntest.caption #: tfrmmasterkey.btntest.caption
msgid "Test" msgid "Test"
msgstr "" msgstr "Test"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr "Schlüssel erstellen"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "" msgstr "Transformation der Schlüssel"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "" msgid "Main Password"
msgstr "Hauptpasswort"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
msgstr "" msgstr "Je mehr Wiederholungen, desto schwieriger sind Wörterbuch- und Brute-Force-Angriffe, aber das Laden/Speichern des Passwortspeichers dauert auch länger."
#: tfrmmasterkey.lblfunction.caption #: tfrmmasterkey.lblfunction.caption
msgid "&Key derivation function:" msgid "&Key derivation function:"
msgstr "" msgstr "Schlüsselableitungsfunktion:"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr "Der Schlüssel wird mithilfe einer Schlüsselableitungsfunktion transformiert. Dies erhöht den Arbeitsaufwand und erschwert Wörterbuch- und Brute-Force-Angriffe."
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
msgstr "" msgstr "Wiederholungen:"
#: tfrmmasterkey.lblmemory.caption #: tfrmmasterkey.lblmemory.caption
msgid "&Memory:" msgid "&Memory:"
msgstr "" msgstr "Speicher:"
#: tfrmmasterkey.lblparallelism.caption #: tfrmmasterkey.lblparallelism.caption
msgid "&Parallelism:" msgid "&Parallelism:"
msgstr "" msgstr "Parallelität (Übereinstimmung):"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr "Pass&wort:"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "" msgstr "Passwort wiederholen:"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr "Geben Sie einen neuen Schlüssel an, der zum Verschlüsseln des Passwortspeichers verwendet wird."
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
#, fuzzy
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
msgid "MB" msgid "MB"
msgstr "MB" msgstr "MB"
@ -10805,11 +10805,13 @@ msgstr "Keine Kombination mit [Eingabetaste]"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Nach Befehlsname;Nach Tastaturkürzel (gruppiert);Nach Tastaturkürzel (einer pro Zeile)" msgstr "Nach Befehlsname;Nach Tastaturkürzel (gruppiert);Nach Tastaturkürzel (einer pro Zeile)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "Die Dateien sollten zuerst heruntergeladen werden. Andernfalls wird nicht der Inhalt der Dateien kopiert, sondern nur die jeweiligen Platzhalter-Dateien, was dann versteckte Dateien mit der Erweiterung ».iCloud« ergibt." msgstr "Die Dateien sollten zuerst heruntergeladen werden. Andernfalls wird nicht der Inhalt der Dateien kopiert, sondern nur die jeweiligen Platzhalter-Dateien, was dann versteckte Dateien mit der Erweiterung ».iCloud« ergibt."
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "Der Vorgang könnte Dateien enthalten, die noch nicht heruntergeladen wurden, trotzdem fortfahren?" msgstr "Der Vorgang könnte Dateien enthalten, die noch nicht heruntergeladen wurden, trotzdem fortfahren?"
@ -10847,6 +10849,17 @@ msgstr "Liste der 'Dateisuche'-Fenster"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "Tags %d Elementen zuordnen" msgstr "Tags %d Elementen zuordnen"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Maske abwählen" msgstr "Maske abwählen"
@ -10962,6 +10975,26 @@ msgstr "Im Finder aufzeigen"
msgid "Finder" msgid "Finder"
msgstr "Finder" msgstr "Finder"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10980,13 +11013,13 @@ msgstr "Horizontal geteilt ein- und ausschalten"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "Horizontal geteilt" msgstr "Horizontal geteilt"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud Drive ist der Cloud-Speicher von Apple. Vergleichbar mit z.B. Dropbox, OneDrive oder Google Drive" msgstr "iCloud Drive ist der Cloud-Speicher von Apple. Vergleichbar mit z.B. Dropbox, OneDrive oder Google Drive"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud Drive" msgstr "iCloud Drive"
@ -11136,11 +11169,13 @@ msgstr "Auswerfen"
msgid "Extract here..." msgid "Extract here..."
msgstr "Archiv hier entpacken …" msgstr "Archiv hier entpacken …"
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "Jetzt downloaden" msgstr "Jetzt downloaden"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "Download entfernen" msgstr "Download entfernen"
@ -11949,12 +11984,12 @@ msgstr "Ungültige Auswahl."
#: ulng.rsmsgkeytransformerror #: ulng.rsmsgkeytransformerror
#, object-pascal-format #, object-pascal-format
msgid "The key transformation failed (error code %d)!" msgid "The key transformation failed (error code %d)!"
msgstr "" msgstr "Transformation der Schlüssel fehlgeschlagen (Fehlercode %d)!"
#: ulng.rsmsgkeytransformtime #: ulng.rsmsgkeytransformtime
#, object-pascal-format #, object-pascal-format
msgid "The key transformation took %f seconds." msgid "The key transformation took %f seconds."
msgstr "" msgstr "Transformation der Schlüssel dauerte %f Sekunden."
#: ulng.rsmsgloadingfilelist #: ulng.rsmsgloadingfilelist
msgid "Loading file list..." msgid "Loading file list..."
@ -12057,12 +12092,13 @@ msgid "Wipe directory %s"
msgstr "Verzeichnis %s gründlich löschen" msgstr "Verzeichnis %s gründlich löschen"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgstr "Master-Passwort" msgid "Main Password"
msgstr "Hauptpasswort"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Bitte Master-Passwort eingeben:" msgstr "Bitte Hauptpasswort eingeben:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile
msgid "New file" msgid "New file"

View file

@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: Double Commander 1.1.0 alpha\n" "Project-Id-Version: Double Commander 1.1.0 alpha\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-15 11:15+0300\n" "POT-Creation-Date: 2022-11-15 11:15+0300\n"
"PO-Revision-Date: 2025-09-06 07:04+0300\n" "PO-Revision-Date: 2025-12-24 01:37+0200\n"
"Last-Translator: Anastasios Kazakis <anastasios.kazakis@gmail.com>\n" "Last-Translator: Anastasios Kazakis <anastasios.kazakis@gmail.com>\n"
"Language-Team: Anastasios Kazakis <anastasios.kazakis@tutanota.com>\n" "Language-Team: Anastasios Kazakis <anastasios.kazakis@tutanota.com>\n"
"Language: el_GR\n" "Language: el_GR\n"
@ -12,7 +12,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Native-Language: ελληνικά\n" "X-Native-Language: ελληνικά\n"
"X-Generator: Poedit 3.6\n" "X-Generator: Poedit 3.8\n"
"X-Language: el_GR\n" "X-Language: el_GR\n"
"X-Source-Language: el\n" "X-Source-Language: el\n"
"X-Poedit-SourceCharset: ISO-8859-7\n" "X-Poedit-SourceCharset: ISO-8859-7\n"
@ -368,7 +368,7 @@ msgstr "Windows"
#: tfrmchecksumcalc.rghashalgorithm.caption #: tfrmchecksumcalc.rghashalgorithm.caption
msgid "Algorithm" msgid "Algorithm"
msgstr "" msgstr "Αλγόριθμος"
#: tfrmchecksumverify.btnclose.caption #: tfrmchecksumverify.btnclose.caption
msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION" msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION"
@ -2804,7 +2804,7 @@ msgstr "Ορισμός όλων των καρτελών σε Κλειδωμέν
#: tfrmmain.actsetalltabsoptionpathresets.caption #: tfrmmain.actsetalltabsoptionpathresets.caption
msgid "All tabs Locked with Dir Changes Allowed" msgid "All tabs Locked with Dir Changes Allowed"
msgstr "Όλες οι καρτέλες Κλειδωμένες με ελέυθερες τις Αλλαγές Καταλόγου" msgstr "Όλες οι καρτέλες Κλειδωμένες με ελεύθερες τις Αλλαγές Καταλόγου"
#: tfrmmain.actsetfileproperties.caption #: tfrmmain.actsetfileproperties.caption
msgctxt "TFRMMAIN.ACTSETFILEPROPERTIES.CAPTION" msgctxt "TFRMMAIN.ACTSETFILEPROPERTIES.CAPTION"
@ -2817,7 +2817,7 @@ msgstr "Κλειδωμένο με Καταλόγους Ανοικτούς σε
#: tfrmmain.actsettaboptionnormal.caption #: tfrmmain.actsettaboptionnormal.caption
msgid "&Normal" msgid "&Normal"
msgstr "Normal" msgstr "Κανονικό"
#: tfrmmain.actsettaboptionpathlocked.caption #: tfrmmain.actsettaboptionpathlocked.caption
msgid "&Locked" msgid "&Locked"
@ -3396,58 +3396,58 @@ msgstr "Ή επιλέξτε τον προκαθορισμένο τύπο επι
#: tfrmmasterkey.btntest.caption #: tfrmmasterkey.btntest.caption
msgid "Test" msgid "Test"
msgstr "" msgstr "Δοκιμή"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr "Δημιουργία Κλειδιού"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "" msgstr "Μετατροπή κλειδιού"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "" msgid "Main Password"
msgstr "Κύριο Συνθηματικό"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
msgstr "" msgstr "Όσες πιο πολλές επαναλήψεις, τόσο πιο δύσκολες είναι οι επιθέσεις λεξικού και εικασίας, αλλά ταυτόχρονα η φόρτωση/αποθήκευση συνθηματικού απαιτεί περισσότερο χρόνο."
#: tfrmmasterkey.lblfunction.caption #: tfrmmasterkey.lblfunction.caption
msgid "&Key derivation function:" msgid "&Key derivation function:"
msgstr "" msgstr "Λειτουργία παραγωγής κλειδιού:"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr "Το κλειδί μετατρέπεται χρησιμοποιώντας μία συνάρτηση παραγωγής κλειδιού. Αυτό προσθέτει ένα επιπλέον φόρτο εργασίας και κάνει τις επιθέσεις λεξικού και εικασίας πιο δύσκολες."
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
msgstr "" msgstr "Επαναλήψεις:"
#: tfrmmasterkey.lblmemory.caption #: tfrmmasterkey.lblmemory.caption
msgid "&Memory:" msgid "&Memory:"
msgstr "" msgstr "Μνήμη:"
#: tfrmmasterkey.lblparallelism.caption #: tfrmmasterkey.lblparallelism.caption
msgid "&Parallelism:" msgid "&Parallelism:"
msgstr "" msgstr "Παραλληλισμός:"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr "Συνθηματικό:"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "" msgstr "Επανάληψη συνθηματικού:"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr "Καθορίστε ένα νέο κλειδί, το οποίο θα χρησιμοποιηθεί για να κρυπτογραφήσει τον χώρο αποθήκευσης συνθηματικών."
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
#, fuzzy
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
msgid "MB" msgid "MB"
msgstr "MB" msgstr "MB"
@ -3634,7 +3634,7 @@ msgstr "Φόρτωση Τελευταίου Ορίσματος"
#: tfrmmultirename.actloadnamesfromclipboard.caption #: tfrmmultirename.actloadnamesfromclipboard.caption
msgid "Load Names from Clipboard" msgid "Load Names from Clipboard"
msgstr "" msgstr "Φόρτωμα ονομάτων από το Πρόχειρο"
#: tfrmmultirename.actloadnamesfromfile.caption #: tfrmmultirename.actloadnamesfromfile.caption
msgid "Load Names from File..." msgid "Load Names from File..."
@ -3785,11 +3785,11 @@ msgstr "Συνήθεις φράσεις"
#: tfrmmultirename.cbrepext.caption #: tfrmmultirename.cbrepext.caption
msgid "E" msgid "E"
msgstr "" msgstr "E"
#: tfrmmultirename.cbrepext.hint #: tfrmmultirename.cbrepext.hint
msgid "Replace also in file extensions" msgid "Replace also in file extensions"
msgstr "" msgstr "Αντικατάσταση επίσης στις επεκτάσεις αρχείου"
#: tfrmmultirename.cbusesubs.caption #: tfrmmultirename.cbusesubs.caption
msgid "&Use substitution" msgid "&Use substitution"
@ -11031,11 +11031,13 @@ msgstr "Δεν υπάρχει συντόμευση για \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Βάσει ονόματος εντολής;Βάσει κουμπιού συντόμευσης (ομαδοποιημένα);Βάσει κουμπιού συντόμευσης (ένα σε κάθε σειρά)" msgstr "Βάσει ονόματος εντολής;Βάσει κουμπιού συντόμευσης (ομαδοποιημένα);Βάσει κουμπιού συντόμευσης (ένα σε κάθε σειρά)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "Προτείνεται να κατεβάσετε τα αρχεία πρώτα. Αλλιώς, ότι αντιγράφεται δεν είναι το περιεχόμενο των αρχείων, αλλά τα αντίστοιχα αρχεία κράτησης χώρου, τα οποία θα έχουν σαν αποτέλεσμα κρυφά αρχεία με την κατάληξη .iCloud." msgstr "Προτείνεται να κατεβάσετε τα αρχεία πρώτα. Αλλιώς, ότι αντιγράφεται δεν είναι το περιεχόμενο των αρχείων, αλλά τα αντίστοιχα αρχεία κράτησης χώρου, τα οποία θα έχουν σαν αποτέλεσμα κρυφά αρχεία με την κατάληξη .iCloud."
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "Η λειτουργία μπορεί να περιέχει αρχεία που δεν έχουν ληφθεί, συνέχιση έτσι κι αλλιώς;" msgstr "Η λειτουργία μπορεί να περιέχει αρχεία που δεν έχουν ληφθεί, συνέχιση έτσι κι αλλιώς;"
@ -11073,6 +11075,17 @@ msgstr "Λίστα παραθύρων \"Αναζήτηση Αρχείων\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "Ανάθεση ετικετών σε %d αντικείμενα" msgstr "Ανάθεση ετικετών σε %d αντικείμενα"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Αποεπιλογή Μάσκας" msgstr "Αποεπιλογή Μάσκας"
@ -11188,6 +11201,26 @@ msgstr "Αποκάλυψη στην Εφαρμογή Εύρεσης"
msgid "Finder" msgid "Finder"
msgstr "Εφαρμογής Εύρεσης" msgstr "Εφαρμογής Εύρεσης"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11206,13 +11239,13 @@ msgstr "Εναλλαγή σε Λειτουργία Οριζοντίου Διαχ
msgid "HorzSplit" msgid "HorzSplit"
msgstr "HorzSplit" msgstr "HorzSplit"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "Οδηγός iCloud" msgstr "Οδηγός iCloud"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "Οδηγός iCloud" msgstr "Οδηγός iCloud"
@ -11236,7 +11269,7 @@ msgstr "Προνόμιο"
#: ulng.rsmfstbiquicklooktips #: ulng.rsmfstbiquicklooktips
msgid "macOS Quick Look Panel" msgid "macOS Quick Look Panel"
msgstr "Καρτέλα σύντομης προβολής macOS" msgstr "Καρτέλα Σύντομης Προβολής macOS"
#: ulng.rsmfstbiquicklooktitle #: ulng.rsmfstbiquicklooktitle
msgid "QuickLook" msgid "QuickLook"
@ -11362,11 +11395,13 @@ msgstr "Εξαγωγή"
msgid "Extract here..." msgid "Extract here..."
msgstr "Εξαγωγή εδώ..." msgstr "Εξαγωγή εδώ..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "Λήψη τώρα" msgstr "Λήψη τώρα"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "Αφαίρεση Ληφθέντος" msgstr "Αφαίρεση Ληφθέντος"
@ -12172,12 +12207,12 @@ msgstr "Μη Έγκυρη επιλογή."
#: ulng.rsmsgkeytransformerror #: ulng.rsmsgkeytransformerror
#, object-pascal-format #, object-pascal-format
msgid "The key transformation failed (error code %d)!" msgid "The key transformation failed (error code %d)!"
msgstr "" msgstr "Αποτυχία μετατροπής κλειδιού (error code %d)!"
#: ulng.rsmsgkeytransformtime #: ulng.rsmsgkeytransformtime
#, object-pascal-format #, object-pascal-format
msgid "The key transformation took %f seconds." msgid "The key transformation took %f seconds."
msgstr "" msgstr "Η μετατροπή κλειδιού διήρκησε %f δευτερόλεπτα."
#: ulng.rsmsgloadingfilelist #: ulng.rsmsgloadingfilelist
msgid "Loading file list..." msgid "Loading file list..."
@ -12280,11 +12315,12 @@ msgid "Wipe directory %s"
msgstr "Ασφαλής Διαγραφή καταλόγου %s" msgstr "Ασφαλής Διαγραφή καταλόγου %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Κύριο Συνθηματικό" msgstr "Κύριο Συνθηματικό"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Παρακαλώ εισάγετε το κύριο συνθηματικό:" msgstr "Παρακαλώ εισάγετε το κύριο συνθηματικό:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3363,7 +3363,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3371,8 +3371,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Contraseña maestra"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3383,7 +3385,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3399,7 +3401,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3407,7 +3409,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10934,11 +10936,13 @@ msgstr "No hay acceso directo con «ENTER»"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Por nombre de comando;Por atajo de teclado (agrupado);Por atajo de teclado (uno por fila)" msgstr "Por nombre de comando;Por atajo de teclado (agrupado);Por atajo de teclado (uno por fila)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10976,6 +10980,17 @@ msgstr "Lista de ventanas de «Archivos encontrados»"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Deseleccionar máscara" msgstr "Deseleccionar máscara"
@ -11096,6 +11111,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11114,13 +11149,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11272,11 +11307,13 @@ msgstr "Expulsar"
msgid "Extract here..." msgid "Extract here..."
msgstr "Extraer aquí..." msgstr "Extraer aquí..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12201,11 +12238,12 @@ msgid "Wipe directory %s"
msgstr "Destruir carpeta «%s»" msgstr "Destruir carpeta «%s»"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Contraseña maestra" msgstr "Contraseña maestra"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Por favor, introduce la contraseña maestra:" msgstr "Por favor, introduce la contraseña maestra:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3460,7 +3460,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3468,8 +3468,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Mot de passe principal"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3480,7 +3482,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3496,7 +3498,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3504,7 +3506,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11149,11 +11151,13 @@ msgstr "Aucun raccourci avec la touche \"Entrée\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Par nom de commande;Par raccourci clavier (groupé);Par raccourci clavier (un par ligne)" msgstr "Par nom de commande;Par raccourci clavier (groupé);Par raccourci clavier (un par ligne)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11191,6 +11195,17 @@ msgstr "Liste des fenêtres de recherche de fichiers"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Désélectionner le masque" msgstr "Désélectionner le masque"
@ -11311,6 +11326,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11329,13 +11364,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11487,11 +11522,13 @@ msgstr "Éjecter"
msgid "Extract here..." msgid "Extract here..."
msgstr "Extraire ici..." msgstr "Extraire ici..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12404,11 +12441,12 @@ msgid "Wipe directory %s"
msgstr "Supprimer de manière sécurisée le dossier %s" msgstr "Supprimer de manière sécurisée le dossier %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Mot de passe principal" msgstr "Mot de passe principal"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Veuillez entrer le mot de passe principal :" msgstr "Veuillez entrer le mot de passe principal :"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3597,7 +3597,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3605,8 +3605,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Glavna lozinka"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3617,7 +3619,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3633,7 +3635,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3641,7 +3643,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11502,11 +11504,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11544,6 +11548,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Odznači masku" msgstr "Odznači masku"
@ -11664,6 +11679,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11682,13 +11717,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11840,11 +11875,13 @@ msgstr "Izbaci"
msgid "Extract here..." msgid "Extract here..."
msgstr "Raspakirajte ovdje" msgstr "Raspakirajte ovdje"
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12759,11 +12796,12 @@ msgid "Wipe directory %s"
msgstr "Izbriši potpuno Mapa %s" msgstr "Izbriši potpuno Mapa %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Glavna lozinka" msgstr "Glavna lozinka"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Unesite ponovo glavnu lozinku:" msgstr "Unesite ponovo glavnu lozinku:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3336,7 +3336,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3344,8 +3344,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Fő jelszó"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3356,7 +3358,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3372,7 +3374,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3380,7 +3382,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10804,11 +10806,13 @@ msgstr "Nincs \"ENTER\" gyorsbillentyű"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Parancsnév szerint;Gyorsbillentyű szerint (csoportosítva);Gyorsbillentyű szerint (soronként egy)" msgstr "Parancsnév szerint;Gyorsbillentyű szerint (csoportosítva);Gyorsbillentyű szerint (soronként egy)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "Javasolt először letölteni a fájlokat. Ellenkező esetben nem a fájlok tartalma, hanem a megfelelő helykitöltő fájlok másolódnak, amely .iCloud kiterjesztésű rejtett fájlokat eredményez." msgstr "Javasolt először letölteni a fájlokat. Ellenkező esetben nem a fájlok tartalma, hanem a megfelelő helykitöltő fájlok másolódnak, amely .iCloud kiterjesztésű rejtett fájlokat eredményez."
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "A művelet tartalmazhat letöltetlen fájlokat, mindenképp folytatja?" msgstr "A művelet tartalmazhat letöltetlen fájlokat, mindenképp folytatja?"
@ -10846,6 +10850,17 @@ msgstr "\"Fájlkeresés\" ablakok listája"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "Címkék hozzárendelése %d elemhez" msgstr "Címkék hozzárendelése %d elemhez"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Maszk kijelölésének megszüntetése" msgstr "Maszk kijelölésének megszüntetése"
@ -10961,6 +10976,26 @@ msgstr "Megjelenítés a Finderben"
msgid "Finder" msgid "Finder"
msgstr "Finder" msgstr "Finder"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10979,13 +11014,13 @@ msgstr "Vízszintes felosztás mód váltása"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "VízszFeloszt" msgstr "VízszFeloszt"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud meghajtó" msgstr "iCloud meghajtó"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud meghajtó" msgstr "iCloud meghajtó"
@ -11135,11 +11170,13 @@ msgstr "Kiadás"
msgid "Extract here..." msgid "Extract here..."
msgstr "Kibontás ide..." msgstr "Kibontás ide..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "Letöltés most" msgstr "Letöltés most"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "Letöltés eltávolítása" msgstr "Letöltés eltávolítása"
@ -12053,11 +12090,12 @@ msgid "Wipe directory %s"
msgstr "%s könyvtár törlése" msgstr "%s könyvtár törlése"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Fő jelszó" msgstr "Fő jelszó"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Kérem, adja meg a fő jelszót:" msgstr "Kérem, adja meg a fő jelszót:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3338,7 +3338,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3346,8 +3346,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Password principale"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3358,7 +3360,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3374,7 +3376,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3382,7 +3384,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10810,11 +10812,13 @@ msgstr "Nessuna scorciatoia con \"INVIO\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Per nome comando;Per tasto di scelta rapida (raggruppato);Per tasto di scelta rapida (uno per riga)" msgstr "Per nome comando;Per tasto di scelta rapida (raggruppato);Per tasto di scelta rapida (uno per riga)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10852,6 +10856,17 @@ msgstr "Elenco delle finestre \"Trova file\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Filtro di deselezione" msgstr "Filtro di deselezione"
@ -10972,6 +10987,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10990,13 +11025,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11148,11 +11183,13 @@ msgstr "Espelli"
msgid "Extract here..." msgid "Extract here..."
msgstr "Estrai qui..." msgstr "Estrai qui..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12061,11 +12098,12 @@ msgid "Wipe directory %s"
msgstr "Cancella la cartella %s" msgstr "Cancella la cartella %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Password principale" msgstr "Password principale"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Prego inserire password principale:" msgstr "Prego inserire password principale:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3408,7 +3408,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3416,8 +3416,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "マスターパスワード"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3428,7 +3430,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3444,7 +3446,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3452,7 +3454,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11066,11 +11068,13 @@ msgstr "\"ENTER\"に対するショートカットはありません"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "コマンド名;ショートカットキー(グループ化して);ショートカット行に1つ" msgstr "コマンド名;ショートカットキー(グループ化して);ショートカット行に1つ"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11108,6 +11112,17 @@ msgstr "”ファイル検索”ウィンドウのリスト"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "選択解除マスク" msgstr "選択解除マスク"
@ -11228,6 +11243,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11246,13 +11281,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11404,11 +11439,13 @@ msgstr "取り出し"
msgid "Extract here..." msgid "Extract here..."
msgstr "ここに抽出…" msgstr "ここに抽出…"
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12319,11 +12356,12 @@ msgid "Wipe directory %s"
msgstr "ディレクトリ<%sを完全消去抹殺" msgstr "ディレクトリ<%sを完全消去抹殺"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "マスターパスワード" msgstr "マスターパスワード"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "マスターパスワードを入力して下さい:" msgstr "マスターパスワードを入力して下さい:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: Double Commander 1.1.0 alpha\n" "Project-Id-Version: Double Commander 1.1.0 alpha\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-15 11:15+0300\n" "POT-Creation-Date: 2022-11-15 11:15+0300\n"
"PO-Revision-Date: 2025-10-23 02:54+0900\n" "PO-Revision-Date: 2026-01-17 01:45+0900\n"
"Last-Translator: VenusGirl <venusgirl@outlook.com>\n" "Last-Translator: VenusGirl <venusgirl@outlook.com>\n"
"Language-Team: 비너스걸: https://venusgirls.tistory.com/\n" "Language-Team: 비너스걸: https://venusgirls.tistory.com/\n"
"Language: ko\n" "Language: ko\n"
@ -11,7 +11,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Native-Language: 한국어\n" "X-Native-Language: 한국어\n"
"X-Generator: Poedit 3.7\n" "X-Generator: Poedit 3.8\n"
#: fsyncdirsdlg.rscomparingpercent #: fsyncdirsdlg.rscomparingpercent
#, object-pascal-format #, object-pascal-format
@ -824,7 +824,7 @@ msgstr "옵션(&O)"
#: tfrmedithotkey.btnaddshortcut.hint #: tfrmedithotkey.btnaddshortcut.hint
msgid "Add new shortcut to sequence" msgid "Add new shortcut to sequence"
msgstr "시퀀스에 새 바로가기 추가" msgstr "시퀀스에 새 단축키 추가"
#: tfrmedithotkey.btncancel.caption #: tfrmedithotkey.btncancel.caption
msgctxt "TFRMEDITHOTKEY.BTNCANCEL.CAPTION" msgctxt "TFRMEDITHOTKEY.BTNCANCEL.CAPTION"
@ -838,11 +838,11 @@ msgstr "확인(&O)"
#: tfrmedithotkey.btnremoveshortcut.hint #: tfrmedithotkey.btnremoveshortcut.hint
msgid "Remove last shortcut from sequence" msgid "Remove last shortcut from sequence"
msgstr "시퀀스에서 마지막 바로가기 제거" msgstr "시퀀스에서 마지막 단축키 제거"
#: tfrmedithotkey.btnselectfromlist.hint #: tfrmedithotkey.btnselectfromlist.hint
msgid "Select shortcut from list of remaining free available keys" msgid "Select shortcut from list of remaining free available keys"
msgstr "사용 가능한 나머지 키 목록에서 바로가기 선택" msgstr "사용 가능한 나머지 키 목록에서 단축키 선택"
#: tfrmedithotkey.cghkcontrols.caption #: tfrmedithotkey.cghkcontrols.caption
msgid "Only for these controls" msgid "Only for these controls"
@ -854,7 +854,7 @@ msgstr "매개변수 (각각 별도의 행에 있음)(&P):"
#: tfrmedithotkey.lblshortcuts.caption #: tfrmedithotkey.lblshortcuts.caption
msgid "Shortcuts:" msgid "Shortcuts:"
msgstr "바로가기:" msgstr "단축키:"
#: tfrmeditor.actabout.caption #: tfrmeditor.actabout.caption
msgctxt "TFRMEDITOR.ACTABOUT.CAPTION" msgctxt "TFRMEDITOR.ACTABOUT.CAPTION"
@ -1217,7 +1217,7 @@ msgstr "파일 마스크와 일치하는 파일 추출(&E):"
#: tfrmextractdlg.lblpassword.caption #: tfrmextractdlg.lblpassword.caption
msgid "&Password for encrypted files:" msgid "&Password for encrypted files:"
msgstr "암호화된 파일의 암호:(&P):" msgstr "암호화된 파일의 비밀번호(&P):"
#: tfrmfileexecuteyourself.btnclose.caption #: tfrmfileexecuteyourself.btnclose.caption
msgctxt "TFRMFILEEXECUTEYOURSELF.BTNCLOSE.CAPTION" msgctxt "TFRMFILEEXECUTEYOURSELF.BTNCLOSE.CAPTION"
@ -1897,7 +1897,7 @@ msgstr "도메인:"
#: tfrmgioauthdialog.lblpassword.caption #: tfrmgioauthdialog.lblpassword.caption
msgctxt "tfrmgioauthdialog.lblpassword.caption" msgctxt "tfrmgioauthdialog.lblpassword.caption"
msgid "Password:" msgid "Password:"
msgstr "호:" msgstr "비밀번호:"
#: tfrmgioauthdialog.lblusername.caption #: tfrmgioauthdialog.lblusername.caption
msgctxt "tfrmgioauthdialog.lblusername.caption" msgctxt "tfrmgioauthdialog.lblusername.caption"
@ -1929,7 +1929,7 @@ msgstr "하드 링크 만들기"
#: tfrmhardlink.lblexistingfile.caption #: tfrmhardlink.lblexistingfile.caption
msgctxt "tfrmhardlink.lblexistingfile.caption" msgctxt "tfrmhardlink.lblexistingfile.caption"
msgid "&Destination that the link will point to" msgid "&Destination that the link will point to"
msgstr "링크가 가리키는 대상(&D)" msgstr "링크가 가리 대상(&D)"
#: tfrmhardlink.lbllinktocreate.caption #: tfrmhardlink.lbllinktocreate.caption
msgctxt "tfrmhardlink.lbllinktocreate.caption" msgctxt "tfrmhardlink.lbllinktocreate.caption"
@ -1939,7 +1939,7 @@ msgstr "링크 이름(&L)"
#: tfrmhotdirexportimport.btnselectall.caption #: tfrmhotdirexportimport.btnselectall.caption
msgctxt "tfrmhotdirexportimport.btnselectall.caption" msgctxt "tfrmhotdirexportimport.btnselectall.caption"
msgid "Import all!" msgid "Import all!"
msgstr "모두 가져옵니다!" msgstr "모두 가져오기!"
#: tfrmhotdirexportimport.btnselectiondone.caption #: tfrmhotdirexportimport.btnselectiondone.caption
msgctxt "tfrmhotdirexportimport.btnselectiondone.caption" msgctxt "tfrmhotdirexportimport.btnselectiondone.caption"
@ -2140,7 +2140,7 @@ msgstr "압축기 구성"
#: tfrmmain.actconfigdirhotlist.caption #: tfrmmain.actconfigdirhotlist.caption
msgctxt "tfrmmain.actconfigdirhotlist.caption" msgctxt "tfrmmain.actconfigdirhotlist.caption"
msgid "Configuration of Directory Hotlist" msgid "Configuration of Directory Hotlist"
msgstr "디렉터리 주요 목록 구성" msgstr "자주 찾는 디렉터리 목록 구성"
#: tfrmmain.actconfigfavoritetabs.caption #: tfrmmain.actconfigfavoritetabs.caption
msgid "Configuration of Favorite Tabs" msgid "Configuration of Favorite Tabs"
@ -2265,7 +2265,7 @@ msgstr "디렉터리 이력"
#: tfrmmain.actdirhotlist.caption #: tfrmmain.actdirhotlist.caption
msgid "Directory &Hotlist" msgid "Directory &Hotlist"
msgstr "디렉터리 주요 목록(&H)" msgstr "자주 찾는 디렉터리 목록(&H)"
#: tfrmmain.actdoanycmcommand.caption #: tfrmmain.actdoanycmcommand.caption
msgid "Execute &internal command..." msgid "Execute &internal command..."
@ -2939,7 +2939,7 @@ msgstr "영구 삭제"
#: tfrmmain.actworkwithdirectoryhotlist.caption #: tfrmmain.actworkwithdirectoryhotlist.caption
msgid "Work with Directory Hotlist and parameters" msgid "Work with Directory Hotlist and parameters"
msgstr "디렉터리 주요 목록 및 매개변수로 작업" msgstr "자주 찾는 디렉터리 목록 및 매개변수로 작업"
#: tfrmmain.btnf10.caption #: tfrmmain.btnf10.caption
msgctxt "TFRMMAIN.BTNF10.CAPTION" msgctxt "TFRMMAIN.BTNF10.CAPTION"
@ -2969,7 +2969,7 @@ msgstr "*"
#: tfrmmain.btnleftdirectoryhotlist.hint #: tfrmmain.btnleftdirectoryhotlist.hint
msgctxt "tfrmmain.btnleftdirectoryhotlist.hint" msgctxt "tfrmmain.btnleftdirectoryhotlist.hint"
msgid "Directory Hotlist" msgid "Directory Hotlist"
msgstr "디렉터리 주요 목록" msgstr "자주 찾는 디렉터리 목록"
#: tfrmmain.btnleftequalright.caption #: tfrmmain.btnleftequalright.caption
msgctxt "tfrmmain.btnleftequalright.caption" msgctxt "tfrmmain.btnleftequalright.caption"
@ -3010,7 +3010,7 @@ msgstr "*"
#: tfrmmain.btnrightdirectoryhotlist.hint #: tfrmmain.btnrightdirectoryhotlist.hint
msgctxt "TFRMMAIN.BTNRIGHTDIRECTORYHOTLIST.HINT" msgctxt "TFRMMAIN.BTNRIGHTDIRECTORYHOTLIST.HINT"
msgid "Directory Hotlist" msgid "Directory Hotlist"
msgstr "디렉터리 주요 목록" msgstr "자주 찾는 디렉터리 목록"
#: tfrmmain.btnrightequalleft.caption #: tfrmmain.btnrightequalleft.caption
msgctxt "tfrmmain.btnrightequalleft.caption" msgctxt "tfrmmain.btnrightequalleft.caption"
@ -3333,58 +3333,58 @@ msgstr "또는 미리 정의된 선택 유형을 선택(&R):"
#: tfrmmasterkey.btntest.caption #: tfrmmasterkey.btntest.caption
msgid "Test" msgid "Test"
msgstr "" msgstr "테스트"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr "키 만들기"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "" msgstr "키 변환"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "" msgid "Main Password"
msgstr "주 비밀번호"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
msgstr "" msgstr "반복 횟수가 많을수록 사전 및 추측 공격이 더 어려워지지만, 비밀번호 저장소 로딩/저장에도 더 많은 시간이 소요됩니다."
#: tfrmmasterkey.lblfunction.caption #: tfrmmasterkey.lblfunction.caption
msgid "&Key derivation function:" msgid "&Key derivation function:"
msgstr "" msgstr "키 유도 함수(&K):"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr "키는 키 유도 함수를 사용하여 변환됩니다. 이는 작업량을 증가시키고 사전 공격 및 추측 공격을 더욱 어렵게 만듭니다."
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
msgstr "" msgstr "반복 횟수(&I):"
#: tfrmmasterkey.lblmemory.caption #: tfrmmasterkey.lblmemory.caption
msgid "&Memory:" msgid "&Memory:"
msgstr "" msgstr "메모리(&M):"
#: tfrmmasterkey.lblparallelism.caption #: tfrmmasterkey.lblparallelism.caption
msgid "&Parallelism:" msgid "&Parallelism:"
msgstr "" msgstr "병행(&P):"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr "비밀번호(&W):"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "" msgstr "비밀번호 반복(&R):"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr "비밀번호 저장소를 암호화하는 데 사용할 새 키를 지정합니다."
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
#, fuzzy
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
msgid "MB" msgid "MB"
msgstr "MB" msgstr "MB"
@ -4098,7 +4098,7 @@ msgstr "목록화 시작 (선택사항)(&G):"
#: tfrmoptionsarchivers.lblarchiverpasswordquery.caption #: tfrmoptionsarchivers.lblarchiverpasswordquery.caption
msgid "Password &query string:" msgid "Password &query string:"
msgstr "호 쿼리 문자열(&Q):" msgstr "비밀번호 쿼리 문자열(&Q):"
#: tfrmoptionsarchivers.lblarchiverselfextract.caption #: tfrmoptionsarchivers.lblarchiverselfextract.caption
msgid "Create self extractin&g archive:" msgid "Create self extractin&g archive:"
@ -4154,7 +4154,7 @@ msgstr "크기, 날짜 또는 속성이 변경될 때(&S)"
#: tfrmoptionsautorefresh.cbwatchexcludedirs.caption #: tfrmoptionsautorefresh.cbwatchexcludedirs.caption
msgctxt "tfrmoptionsautorefresh.cbwatchexcludedirs.caption" msgctxt "tfrmoptionsautorefresh.cbwatchexcludedirs.caption"
msgid "For the following &paths and their subdirectories:" msgid "For the following &paths and their subdirectories:"
msgstr "다음 경로 및 해당 하위 디렉터리에 대해:(&P):" msgstr "다음 경로와 그 하위 디렉터리에 대해:(&P):"
#: tfrmoptionsautorefresh.cbwatchfilenamechange.caption #: tfrmoptionsautorefresh.cbwatchfilenamechange.caption
msgid "When &files are created, deleted or renamed" msgid "When &files are created, deleted or renamed"
@ -4868,7 +4868,7 @@ msgstr "활성 및 비활성 프레임의 디렉터리 추가(&D)"
#: tfrmoptionsdirectoryhotlist.actaddbrowseddir.caption #: tfrmoptionsdirectoryhotlist.actaddbrowseddir.caption
msgid "Add directory I will bro&wse to" msgid "Add directory I will bro&wse to"
msgstr "찾아 디렉터리 추가(&W)" msgstr "찾아 디렉터리 추가(&W)"
#: tfrmoptionsdirectoryhotlist.actaddcopyofentry.caption #: tfrmoptionsdirectoryhotlist.actaddcopyofentry.caption
msgctxt "tfrmoptionsdirectoryhotlist.actaddcopyofentry.caption" msgctxt "tfrmoptionsdirectoryhotlist.actaddcopyofentry.caption"
@ -4891,7 +4891,7 @@ msgstr "하위 메뉴 추가"
#: tfrmoptionsdirectoryhotlist.actaddtypeddir.caption #: tfrmoptionsdirectoryhotlist.actaddtypeddir.caption
msgctxt "tfrmoptionsdirectoryhotlist.actaddtypeddir.caption" msgctxt "tfrmoptionsdirectoryhotlist.actaddtypeddir.caption"
msgid "Add directory I will type" msgid "Add directory I will type"
msgstr "입력 디렉터리 추가" msgstr "입력해서 디렉터리 추가"
#: tfrmoptionsdirectoryhotlist.actcollapseall.caption #: tfrmoptionsdirectoryhotlist.actcollapseall.caption
msgctxt "tfrmoptionsdirectoryhotlist.actcollapseall.caption" msgctxt "tfrmoptionsdirectoryhotlist.actcollapseall.caption"
@ -4957,7 +4957,7 @@ msgstr "활성 및 비활성 프레임의 디렉터리 삽입(&D)"
#: tfrmoptionsdirectoryhotlist.actinsertbrowseddir.caption #: tfrmoptionsdirectoryhotlist.actinsertbrowseddir.caption
msgid "Insert directory I will bro&wse to" msgid "Insert directory I will bro&wse to"
msgstr "찾아 디렉터리 추가(&W)" msgstr "찾아 디렉터리 추가(&W)"
#: tfrmoptionsdirectoryhotlist.actinsertcopyofentry.caption #: tfrmoptionsdirectoryhotlist.actinsertcopyofentry.caption
msgid "Insert a copy of the selected entry" msgid "Insert a copy of the selected entry"
@ -4978,7 +4978,7 @@ msgstr "하위 메뉴 삽입"
#: tfrmoptionsdirectoryhotlist.actinserttypeddir.caption #: tfrmoptionsdirectoryhotlist.actinserttypeddir.caption
msgctxt "tfrmoptionsdirectoryhotlist.actinserttypeddir.caption" msgctxt "tfrmoptionsdirectoryhotlist.actinserttypeddir.caption"
msgid "Insert directory I will type" msgid "Insert directory I will type"
msgstr "입력 디렉터리 삽입" msgstr "입력해서 디렉터리 삽입"
#: tfrmoptionsdirectoryhotlist.actmovetonext.caption #: tfrmoptionsdirectoryhotlist.actmovetonext.caption
msgid "Move to next" msgid "Move to next"
@ -5094,7 +5094,7 @@ msgstr "이름, a-z"
#: tfrmoptionsdirectoryhotlist.gbdirectoryhotlist.caption #: tfrmoptionsdirectoryhotlist.gbdirectoryhotlist.caption
msgid "Directory Hotlist (reorder by drag && drop)" msgid "Directory Hotlist (reorder by drag && drop)"
msgstr "디렉터리 주요 목록 (끌어서 놓기로 재정렬)" msgstr "자주 찾는 디렉터리 목록 (끌어서 놓기로 재정렬)"
#: tfrmoptionsdirectoryhotlist.gbhotlistotheroptions.caption #: tfrmoptionsdirectoryhotlist.gbhotlistotheroptions.caption
msgctxt "tfrmoptionsdirectoryhotlist.gbhotlistotheroptions.caption" msgctxt "tfrmoptionsdirectoryhotlist.gbhotlistotheroptions.caption"
@ -5122,15 +5122,15 @@ msgstr ".....선택된 항목의 현재 수준만(&V)"
#: tfrmoptionsdirectoryhotlist.midetectifpathexist.caption #: tfrmoptionsdirectoryhotlist.midetectifpathexist.caption
msgid "Scan all &hotdir's path to validate the ones that actually exist" msgid "Scan all &hotdir's path to validate the ones that actually exist"
msgstr "모든 주요 디렉터리 경로를 검색하여 실제로 존재하는 경로 검증(&H)" msgstr "모든 자주 찾는 디렉터리 경로를 검색하여 실제로 존재하는 경로 검증(&H)"
#: tfrmoptionsdirectoryhotlist.midetectifpathtargetexist.caption #: tfrmoptionsdirectoryhotlist.midetectifpathtargetexist.caption
msgid "&Scan all hotdir's path && target to validate the ones that actually exist" msgid "&Scan all hotdir's path && target to validate the ones that actually exist"
msgstr "모든 주요 디렉터리 경로 및 대상을 검색하여 실제로 존재하는 경로 검증(&S)" msgstr "모든 자주 찾는 디렉터리 경로 및 대상을 검색하여 실제로 존재하는 경로 검증(&S)"
#: tfrmoptionsdirectoryhotlist.miexporttohotlistfile.caption #: tfrmoptionsdirectoryhotlist.miexporttohotlistfile.caption
msgid "to a Directory &Hotlist file (.hotlist)" msgid "to a Directory &Hotlist file (.hotlist)"
msgstr "디렉터리 주요 목록 파일 (.hotlist)로(&H)" msgstr "자주 찾는 디렉터리 목록 (.hotlist)로(&H)"
#: tfrmoptionsdirectoryhotlist.miexporttototalcommanderk.caption #: tfrmoptionsdirectoryhotlist.miexporttototalcommanderk.caption
msgctxt "tfrmoptionsdirectoryhotlist.miexporttototalcommanderk.caption" msgctxt "tfrmoptionsdirectoryhotlist.miexporttototalcommanderk.caption"
@ -5158,7 +5158,7 @@ msgstr "HotDirTestMenu"
#: tfrmoptionsdirectoryhotlist.miimportfromhotlistfile.caption #: tfrmoptionsdirectoryhotlist.miimportfromhotlistfile.caption
msgid "from a Directory &Hotlist file (.hotlist)" msgid "from a Directory &Hotlist file (.hotlist)"
msgstr "디렉터리 주요 목록 파일 (.hotlist)에서(&H)" msgstr "자주 찾는 디렉터리 목록 파일 (.hotlist)에서(&H)"
#: tfrmoptionsdirectoryhotlist.miimporttotalcommander.caption #: tfrmoptionsdirectoryhotlist.miimporttotalcommander.caption
msgid "from \"&wincmd.ini\" of TC" msgid "from \"&wincmd.ini\" of TC"
@ -5170,11 +5170,11 @@ msgstr "탐색(&N)..."
#: tfrmoptionsdirectoryhotlist.mirestorebackuphotlist.caption #: tfrmoptionsdirectoryhotlist.mirestorebackuphotlist.caption
msgid "&Restore a backup of Directory Hotlist" msgid "&Restore a backup of Directory Hotlist"
msgstr "디렉터리 주요 목록 백업 복원(&R)" msgstr "자주 찾는 디렉터리 목록 백업 복원(&R)"
#: tfrmoptionsdirectoryhotlist.misavebackuphotlist.caption #: tfrmoptionsdirectoryhotlist.misavebackuphotlist.caption
msgid "&Save a backup of current Directory Hotlist" msgid "&Save a backup of current Directory Hotlist"
msgstr "현재 디렉터리 주요 목록 백업 저장(&S)" msgstr "현재 자주 찾는 디렉터리 목록 백업 저장(&S)"
#: tfrmoptionsdirectoryhotlist.misearchandreplace.caption #: tfrmoptionsdirectoryhotlist.misearchandreplace.caption
msgctxt "tfrmoptionsdirectoryhotlist.misearchandreplace.caption" msgctxt "tfrmoptionsdirectoryhotlist.misearchandreplace.caption"
@ -5220,7 +5220,7 @@ msgstr "기본 패널에서 추가"
#: tfrmoptionsdirectoryhotlistextra.btnpathtoberelativetoall.caption #: tfrmoptionsdirectoryhotlistextra.btnpathtoberelativetoall.caption
msgid "Apply current settings to directory hotlist" msgid "Apply current settings to directory hotlist"
msgstr "디렉터리 주요 목록에 현재 설정 적용" msgstr "자주 찾는 디렉터리 목록에 현재 설정 적용"
#: tfrmoptionsdirectoryhotlistextra.ckbdirectoryhotlistsource.caption #: tfrmoptionsdirectoryhotlistextra.ckbdirectoryhotlistsource.caption
msgid "Source" msgid "Source"
@ -5821,7 +5821,7 @@ msgstr "작업의 이름입니다. 이 이름은 시스템으로 전달되지
#: tfrmoptionsfileassoc.edtparams.hint #: tfrmoptionsfileassoc.edtparams.hint
msgid "Parameter to pass to the command. Long filename with spaces should be quoted (manually entering)." msgid "Parameter to pass to the command. Long filename with spaces should be quoted (manually entering)."
msgstr "명령에 전달할 매개 변수입니다. 공백이 있는 긴 파일 이름을 따옴표로 나타내야 합니다 (수동으로 입력)." msgstr "명령에 전달할 매개변수입니다. 공백이 있는 긴 파일 이름을 따옴표로 나타내야 합니다 (수동으로 입력)."
#: tfrmoptionsfileassoc.fnecommand.hint #: tfrmoptionsfileassoc.fnecommand.hint
msgid "Command to execute. Never quote this string." msgid "Command to execute. Never quote this string."
@ -6494,7 +6494,7 @@ msgstr "명령(&M):"
#: tfrmoptionshotkeys.lblscfiles.caption #: tfrmoptionshotkeys.lblscfiles.caption
msgid "&Shortcut files:" msgid "&Shortcut files:"
msgstr "바로가기 파일(&S):" msgstr "단축키 파일(&S):"
#: tfrmoptionshotkeys.lblsortorder.caption #: tfrmoptionshotkeys.lblsortorder.caption
msgid "So&rt order:" msgid "So&rt order:"
@ -6855,7 +6855,7 @@ msgstr "구성 파일 내용 보기"
#: tfrmoptionsmisc.chkdesccreateunicode.caption #: tfrmoptionsmisc.chkdesccreateunicode.caption
msgctxt "TFRMOPTIONSMISC.CHKDESCCREATEUNICODE.CAPTION" msgctxt "TFRMOPTIONSMISC.CHKDESCCREATEUNICODE.CAPTION"
msgid "Create new with the encoding:" msgid "Create new with the encoding:"
msgstr "인코딩을 사용하여 새로 만들기:" msgstr "다음 인코딩으로 새로 만들기:"
#: tfrmoptionsmisc.chkgotoroot.caption #: tfrmoptionsmisc.chkgotoroot.caption
msgid "Always &go to the root of a drive when changing drives" msgid "Always &go to the root of a drive when changing drives"
@ -7479,7 +7479,7 @@ msgstr "제안"
#: tfrmoptionstoolbarbase.btnsuggestiontooltip.hint #: tfrmoptionstoolbarbase.btnsuggestiontooltip.hint
msgid "Have DC suggest the tooltip based on button type, command and parameters" msgid "Have DC suggest the tooltip based on button type, command and parameters"
msgstr "버튼 유형, 명령 및 매개 변수에 따라 DC에서 도구 설명을 제안하도록 합니다" msgstr "버튼 유형, 명령 및 매개변수에 따라 DC에서 도구 설명을 제안하도록 합니다"
#: tfrmoptionstoolbarbase.cbflatbuttons.caption #: tfrmoptionstoolbarbase.cbflatbuttons.caption
msgctxt "tfrmoptionstoolbarbase.CBFLATBUTTONS.CAPTION" msgctxt "tfrmoptionstoolbarbase.CBFLATBUTTONS.CAPTION"
@ -7946,7 +7946,7 @@ msgstr "외부 프로그램 사용(&U)"
#: tfrmoptionstoolbase.lbltoolsparameters.caption #: tfrmoptionstoolbase.lbltoolsparameters.caption
msgid "A&dditional parameters" msgid "A&dditional parameters"
msgstr "추가 매개 변수(&D)" msgstr "추가 매개변수(&D)"
#: tfrmoptionstoolbase.lbltoolspath.caption #: tfrmoptionstoolbase.lbltoolspath.caption
msgid "&Path to program to execute" msgid "&Path to program to execute"
@ -8098,7 +8098,7 @@ msgstr "*참고: 대소문자 구분, 억양 무시 또는 무시와 같은 옵
#: tfrmoptionstreeviewmenu.lbluseindirectoryhotlist.caption #: tfrmoptionstreeviewmenu.lbluseindirectoryhotlist.caption
msgid "With Directory Hotlist:" msgid "With Directory Hotlist:"
msgstr "디렉터리 주요 목록 사용:" msgstr "자주 찾는 디렉터리 목록 사용:"
#: tfrmoptionstreeviewmenu.lblusewithfavoritetabs.caption #: tfrmoptionstreeviewmenu.lblusewithfavoritetabs.caption
msgid "With Favorite Tabs:" msgid "With Favorite Tabs:"
@ -8115,7 +8115,7 @@ msgstr "..."
#: tfrmoptionstreeviewmenucolor.cbkusagekeyboardshortcut.caption #: tfrmoptionstreeviewmenucolor.cbkusagekeyboardshortcut.caption
msgid "Use and display keyboard shortcut for choosing items" msgid "Use and display keyboard shortcut for choosing items"
msgstr "항목 선택을 위한 키보드 바로가기 사용 및 표시" msgstr "항목 선택을 위한 키보드 단축키 사용 및 표시"
#: tfrmoptionstreeviewmenucolor.gbfont.caption #: tfrmoptionstreeviewmenucolor.gbfont.caption
msgid "Font" msgid "Font"
@ -8163,11 +8163,11 @@ msgstr "커서 아래 보조 텍스트:"
#: tfrmoptionstreeviewmenucolor.lblshortcutcolor.caption #: tfrmoptionstreeviewmenucolor.lblshortcutcolor.caption
msgid "Shortcut color:" msgid "Shortcut color:"
msgstr "바로가기 색상:" msgstr "단축키 색상:"
#: tfrmoptionstreeviewmenucolor.lblshortcutundercursor.caption #: tfrmoptionstreeviewmenucolor.lblshortcutundercursor.caption
msgid "Shortcut under cursor:" msgid "Shortcut under cursor:"
msgstr "커서 아래 바로가기:" msgstr "커서 아래 단축키:"
#: tfrmoptionstreeviewmenucolor.lblunselectabletextcolor.caption #: tfrmoptionstreeviewmenucolor.lblunselectabletextcolor.caption
msgid "Unselectable text color:" msgid "Unselectable text color:"
@ -8335,7 +8335,7 @@ msgstr "대소문자 구분"
#: tfrmquicksearch.sbdiacritics.caption #: tfrmquicksearch.sbdiacritics.caption
msgid "Ďï" msgid "Ďï"
msgstr "" msgstr "Ďï"
#: tfrmquicksearch.sbdiacritics.hint #: tfrmquicksearch.sbdiacritics.hint
msgid "Diacritics and ligatures" msgid "Diacritics and ligatures"
@ -9068,7 +9068,7 @@ msgstr "트리 보기 메뉴"
#: tfrmtreeviewmenu.lblsearchingentry.caption #: tfrmtreeviewmenu.lblsearchingentry.caption
msgid "Select your hot directory:" msgid "Select your hot directory:"
msgstr "주요 디렉터리 선택:" msgstr "자주 찾는 디렉터리 선택:"
#: tfrmtreeviewmenu.pmicasesensitive.caption #: tfrmtreeviewmenu.pmicasesensitive.caption
msgid "Search is case sensitive" msgid "Search is case sensitive"
@ -10465,7 +10465,7 @@ msgstr "DC 도구 설명 파일"
#: ulng.rsfilterdirectoryhotlistfiles #: ulng.rsfilterdirectoryhotlistfiles
msgid "Directory Hotlist files" msgid "Directory Hotlist files"
msgstr "디렉터리 주요 목록 파일" msgstr "자주 찾는 디렉터리 목록 파일"
#: ulng.rsfilterexecutablefiles #: ulng.rsfilterexecutablefiles
msgid "Executables files" msgid "Executables files"
@ -10781,7 +10781,7 @@ msgstr "새 이름 입력"
#: ulng.rshotkeyfilemustkeepone #: ulng.rshotkeyfilemustkeepone
msgid "You must keep at least one shortcut file." msgid "You must keep at least one shortcut file."
msgstr "하나 이상의 바로가기 파일을 유지해야 합니다." msgstr "하나 이상의 단축키 파일을 유지해야 합니다."
#: ulng.rshotkeyfilenewname #: ulng.rshotkeyfilenewname
msgid "New name" msgid "New name"
@ -10798,17 +10798,19 @@ msgstr ""
#: ulng.rshotkeynoscenter #: ulng.rshotkeynoscenter
msgid "No shortcut with \"ENTER\"" msgid "No shortcut with \"ENTER\""
msgstr "\"ENTER\"로 바로가기 없음" msgstr "\"ENTER\"로 단축키 없음"
#: ulng.rshotkeysortorder #: ulng.rshotkeysortorder
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "명령 이름별;바로가기 키별 (그룹화);바로가기 키별 (행당 1개)" msgstr "명령 이름별;단축키 키별 (그룹화);단축키 키별 (행당 1개)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "먼저 파일을 다운로드하는 것이 좋습니다. 그렇지 않으면 복사되는 것은 파일의 콘텐츠가 아니라 해당 자리 표시자 파일로, 확장자가 .iCloud인 숨겨진 파일이 됩니다." msgstr "먼저 파일을 다운로드하는 것이 좋습니다. 그렇지 않으면 복사되는 것은 파일의 콘텐츠가 아니라 해당 자리 표시자 파일로, 확장자가 .iCloud인 숨겨진 파일이 됩니다."
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "다운로드하지 않은 파일이 포함되어 있을 수 있는데 계속 진행하시겠습니까?" msgstr "다운로드하지 않은 파일이 포함되어 있을 수 있는데 계속 진행하시겠습니까?"
@ -10846,6 +10848,20 @@ msgstr "\"파일 찾기\" 창 목록"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "%d 항목에 태그 할당" msgstr "%d 항목에 태그 할당"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
"URL:\n"
"(예: smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr "SMB / Samba / WebDAV / NFS ..."
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "마스크 선택 취소" msgstr "마스크 선택 취소"
@ -10910,7 +10926,7 @@ msgstr "AirDrop"
#: ulng.rsmfstbicommandmenudirectoryhotlist #: ulng.rsmfstbicommandmenudirectoryhotlist
msgctxt "ulng.rsmfstbicommandmenudirectoryhotlist" msgctxt "ulng.rsmfstbicommandmenudirectoryhotlist"
msgid "Directory Hotlist" msgid "Directory Hotlist"
msgstr "디렉터리 주요 목록" msgstr "자주 찾는 디렉터리 목록"
#: ulng.rsmfstbicommandmenufavoritetabs #: ulng.rsmfstbicommandmenufavoritetabs
msgctxt "ulng.rsmfstbicommandmenufavoritetabs" msgctxt "ulng.rsmfstbicommandmenufavoritetabs"
@ -10961,6 +10977,26 @@ msgstr "파인더에서 공개"
msgid "Finder" msgid "Finder"
msgstr "파인더" msgstr "파인더"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr "뒤로"
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr "뒤로"
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr "앞으로"
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr "앞으로"
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10979,13 +11015,13 @@ msgstr "수평 분할 모드 전환"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "수평 분할" msgstr "수평 분할"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud 드라이버" msgstr "iCloud 드라이버"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud 드라이버" msgstr "iCloud 드라이버"
@ -11116,7 +11152,7 @@ msgstr "8진수"
#: ulng.rsmnucreateshortcut #: ulng.rsmnucreateshortcut
msgid "Create Shortcut..." msgid "Create Shortcut..."
msgstr "바로가기 만들기..." msgstr "단축키 만들기..."
#: ulng.rsmnudisconnectnetworkdrive #: ulng.rsmnudisconnectnetworkdrive
msgid "Disconnect Network Drive..." msgid "Disconnect Network Drive..."
@ -11135,13 +11171,15 @@ msgstr "꺼내기"
msgid "Extract here..." msgid "Extract here..."
msgstr "여기에 추출..." msgstr "여기에 추출..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "지금 다운로드" msgstr "지금 다운로드"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "다운로드 제거" msgstr "지금 다운로드"
#: ulng.rsmnumount #: ulng.rsmnumount
msgid "Mount" msgid "Mount"
@ -11710,11 +11748,11 @@ msgstr "cm_somthing"
#: ulng.rsmsghotdirconfighotlist #: ulng.rsmsghotdirconfighotlist
msgctxt "ulng.rsmsghotdirconfighotlist" msgctxt "ulng.rsmsghotdirconfighotlist"
msgid "Configuration of Directory Hotlist" msgid "Configuration of Directory Hotlist"
msgstr "디렉터리 주요 목록 구성" msgstr "자주 찾는 디렉터리 목록 구성"
#: ulng.rsmsghotdirdeleteallentries #: ulng.rsmsghotdirdeleteallentries
msgid "Are you sure you want to remove all entries of your Directory Hotlist? (There is no \"undo\" to this action!)" msgid "Are you sure you want to remove all entries of your Directory Hotlist? (There is no \"undo\" to this action!)"
msgstr "디렉터리 주요 목록의 모든 항목을 제거하시겠습니까? (이 작업에는 \"실행 취소\"가 없습니다!)" msgstr "자주 찾는 디렉터리 목록의 모든 항목을 제거하시겠습니까? (이 작업에는 \"실행 취소\"가 없습니다!)"
#: ulng.rsmsghotdirdemocommand #: ulng.rsmsghotdirdemocommand
msgid "This will execute the following command:" msgid "This will execute the following command:"
@ -11722,7 +11760,7 @@ msgstr "그러면 다음 명령이 실행됩니다:"
#: ulng.rsmsghotdirdemoname #: ulng.rsmsghotdirdemoname
msgid "This is hot dir named " msgid "This is hot dir named "
msgstr "이것은 주요 디렉터리 이름입니다 " msgstr "이것은 자주 찾는 디렉터리 이름입니다 "
#: ulng.rsmsghotdirdemopath #: ulng.rsmsghotdirdemopath
msgid "This will change active frame to the following path:" msgid "This will change active frame to the following path:"
@ -11746,7 +11784,7 @@ msgstr "모두 내보내기!"
#: ulng.rsmsghotdirexporthotlist #: ulng.rsmsghotdirexporthotlist
msgid "Export Directory Hotlist - Select the entries you want to export" msgid "Export Directory Hotlist - Select the entries you want to export"
msgstr "디렉터리 주요 목록 내보내기 - 내보낼 항목 선택" msgstr "자주 찾는 디렉터리 목록 내보내기 - 내보낼 항목 선택"
#: ulng.rsmsghotdirexportsel #: ulng.rsmsghotdirexportsel
msgid "Export selected" msgid "Export selected"
@ -11759,7 +11797,7 @@ msgstr "모두 가져오기!"
#: ulng.rsmsghotdirimporthotlist #: ulng.rsmsghotdirimporthotlist
msgid "Import Directory Hotlist - Select the entries you want to import" msgid "Import Directory Hotlist - Select the entries you want to import"
msgstr "디렉터리 주요 목록 가져오기 - 가져올 항목 선택" msgstr "자주 찾는 디렉터리 목록 가져오기 - 가져올 항목 선택"
#: ulng.rsmsghotdirimportsel #: ulng.rsmsghotdirimportsel
msgctxt "ulng.rsmsghotdirimportsel" msgctxt "ulng.rsmsghotdirimportsel"
@ -11777,7 +11815,7 @@ msgstr "가져올 \".hotlist\" 파일 찾기"
#: ulng.rsmsghotdirname #: ulng.rsmsghotdirname
msgid "Hotdir name" msgid "Hotdir name"
msgstr "주요 디렉터리 이름" msgstr "자주 찾는 디렉터리 이름"
#: ulng.rsmsghotdirnbnewentries #: ulng.rsmsghotdirnbnewentries
#, object-pascal-format #, object-pascal-format
@ -11790,7 +11828,7 @@ msgstr "내보낼 항목이 선택되지 않았습니다!"
#: ulng.rsmsghotdirpath #: ulng.rsmsghotdirpath
msgid "Hotdir path" msgid "Hotdir path"
msgstr "주요 디렉터리 경로" msgstr "자주 찾는 디렉터리 경로"
#: ulng.rsmsghotdirreaddselecteddirectory #: ulng.rsmsghotdirreaddselecteddirectory
msgid "Re-Add selected dir: " msgid "Re-Add selected dir: "
@ -11802,7 +11840,7 @@ msgstr "현재 디렉터리 다시 추가: "
#: ulng.rsmsghotdirrestorewhat #: ulng.rsmsghotdirrestorewhat
msgid "Enter location and filename of Directory Hotlist to restore" msgid "Enter location and filename of Directory Hotlist to restore"
msgstr "복원할 디렉터리 주요 목록의 위치 및 파일 이름 입력" msgstr "복원할 자주 찾는 디렉터리 목록의 위치 및 파일 이름 입력"
#: ulng.rsmsghotdirsimplecommand #: ulng.rsmsghotdirsimplecommand
msgctxt "ulng.rsmsghotdirsimplecommand" msgctxt "ulng.rsmsghotdirsimplecommand"
@ -11836,7 +11874,7 @@ msgstr "하위 메뉴 이름"
#: ulng.rsmsghotdirtarget #: ulng.rsmsghotdirtarget
msgid "Hotdir target" msgid "Hotdir target"
msgstr "주요 디렉터리 대상" msgstr "자주 찾는 디렉터리 대상"
#: ulng.rsmsghotdirtiporderpath #: ulng.rsmsghotdirtiporderpath
msgid "Determine if you want the active frame to be sorted in a specified order after changing directory" msgid "Determine if you want the active frame to be sorted in a specified order after changing directory"
@ -11848,7 +11886,7 @@ msgstr "디렉터리 변경 후 활성화되지 않은 프레임을 지정된
#: ulng.rsmsghotdirtipspecialdirbut #: ulng.rsmsghotdirtipspecialdirbut
msgid "Some functions to select appropriate path relative, absolute, windows special folders, etc." msgid "Some functions to select appropriate path relative, absolute, windows special folders, etc."
msgstr "상대 경로, 절대 경로, Windows 특수 폴더 등 적절한 경로를 선택하는 일부 기능" msgstr "상대 경로, 절대 경로, Windows 특수 폴더 등 적절한 경로를 선택하는 몇 가지 기능"
#: ulng.rsmsghotdirtotalbackuped #: ulng.rsmsghotdirtotalbackuped
#, object-pascal-format #, object-pascal-format
@ -11876,7 +11914,7 @@ msgstr ""
#: ulng.rsmsghotdirwheretosave #: ulng.rsmsghotdirwheretosave
msgid "Enter location and filename where to save a Directory Hotlist file" msgid "Enter location and filename where to save a Directory Hotlist file"
msgstr "디렉터리 주요 목록 파일을 저장할 위치 및 파일 이름 입력" msgstr "자주 찾는 디렉터리 목록 파일을 저장할 위치 및 파일 이름 입력"
#: ulng.rsmsgincorrectfilelength #: ulng.rsmsgincorrectfilelength
#, object-pascal-format #, object-pascal-format
@ -11946,12 +11984,12 @@ msgstr "잘못된 선택입니다."
#: ulng.rsmsgkeytransformerror #: ulng.rsmsgkeytransformerror
#, object-pascal-format #, object-pascal-format
msgid "The key transformation failed (error code %d)!" msgid "The key transformation failed (error code %d)!"
msgstr "" msgstr "키 변환에 실패했습니다 (오류 코드 %d)!"
#: ulng.rsmsgkeytransformtime #: ulng.rsmsgkeytransformtime
#, object-pascal-format #, object-pascal-format
msgid "The key transformation took %f seconds." msgid "The key transformation took %f seconds."
msgstr "" msgstr "키 변환에 %f초가 걸렸습니다."
#: ulng.rsmsgloadingfilelist #: ulng.rsmsgloadingfilelist
msgid "Loading file list..." msgid "Loading file list..."
@ -12054,12 +12092,13 @@ msgid "Wipe directory %s"
msgstr "%s 폴더 영구 삭제" msgstr "%s 폴더 영구 삭제"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgstr "마스터 암호" msgid "Main Password"
msgstr "주 비밀번호"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "마스터 암호를 입력하세요:" msgstr "주 비밀번호를 입력하세요:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile
msgid "New file" msgid "New file"
@ -12110,23 +12149,23 @@ msgstr "아래는 미리보기입니다. 커서를 이동하고 파일을 선택
#: ulng.rsmsgpassword #: ulng.rsmsgpassword
msgctxt "ulng.rsmsgpassword" msgctxt "ulng.rsmsgpassword"
msgid "Password:" msgid "Password:"
msgstr "호:" msgstr "비밀번호:"
#: ulng.rsmsgpassworddiff #: ulng.rsmsgpassworddiff
msgid "Passwords are different!" msgid "Passwords are different!"
msgstr "호가 다릅니다!" msgstr "비밀번호가 다릅니다!"
#: ulng.rsmsgpasswordenter #: ulng.rsmsgpasswordenter
msgid "Please enter the password:" msgid "Please enter the password:"
msgstr "호를 입력하세요:" msgstr "비밀번호를 입력하세요:"
#: ulng.rsmsgpasswordfirewall #: ulng.rsmsgpasswordfirewall
msgid "Password (Firewall):" msgid "Password (Firewall):"
msgstr "호 (방화벽):" msgstr "비밀번호 (방화벽):"
#: ulng.rsmsgpasswordverify #: ulng.rsmsgpasswordverify
msgid "Please re-enter the password for verification:" msgid "Please re-enter the password for verification:"
msgstr "검증을 위해 호를 다시 입력하세요:" msgstr "검증을 위해 비밀번호를 다시 입력하세요:"
#: ulng.rsmsgpopuphotdelete #: ulng.rsmsgpopuphotdelete
#, object-pascal-format #, object-pascal-format
@ -12256,7 +12295,7 @@ msgstr "Windows 특수 폴더 (TC)로 가기..."
#: ulng.rsmsgspecialdirmakereltohotdir #: ulng.rsmsgspecialdirmakereltohotdir
msgid "Make relative to hotdir path" msgid "Make relative to hotdir path"
msgstr "주요 디렉터리 경로를 상대 경로로 만들기" msgstr "자주 찾는 디렉터리 경로를 상대 경로로 만들기"
#: ulng.rsmsgspecialdirmkabso #: ulng.rsmsgspecialdirmkabso
msgid "Make path absolute" msgid "Make path absolute"
@ -12284,7 +12323,7 @@ msgstr "Double Commander 특수 경로 사용..."
#: ulng.rsmsgspecialdirusehotdir #: ulng.rsmsgspecialdirusehotdir
msgid "Use hotdir path" msgid "Use hotdir path"
msgstr "주요 디렉터리 경로 사용" msgstr "자주 찾는 디렉터리 경로 사용"
#: ulng.rsmsgspecialdiruseother #: ulng.rsmsgspecialdiruseother
msgid "Use other Windows special folder..." msgid "Use other Windows special folder..."
@ -12468,7 +12507,7 @@ msgid ""
"Wrong password!\n" "Wrong password!\n"
"Please try again!" "Please try again!"
msgstr "" msgstr ""
"호가 잘못되었습니다!\n" "비밀번호가 잘못되었습니다!\n"
"다시 시도해 주세요!" "다시 시도해 주세요!"
#: ulng.rsmulrenautorename #: ulng.rsmulrenautorename
@ -13185,7 +13224,7 @@ msgstr "부동"
#: ulng.rsopthotkeysadddeleteshortcutlong #: ulng.rsopthotkeysadddeleteshortcutlong
#, object-pascal-format #, object-pascal-format
msgid "Shortcut %s for cm_Delete will be registered, so it can be used to reverse this setting." msgid "Shortcut %s for cm_Delete will be registered, so it can be used to reverse this setting."
msgstr "cm_Delete의 바로가기 %s이(가) 등록되므로 이 설정을 되돌리는 데 사용할 수 있습니다." msgstr "cm_Delete 단축키 %s가 등록되어 이 설정을 반전하는 데 사용할 수 있습니다."
#: ulng.rsopthotkeysaddhotkey #: ulng.rsopthotkeysaddhotkey
#, object-pascal-format #, object-pascal-format
@ -13194,15 +13233,15 @@ msgstr "%s에 대한 단축키 추가"
#: ulng.rsopthotkeysaddshortcutbutton #: ulng.rsopthotkeysaddshortcutbutton
msgid "Add shortcut" msgid "Add shortcut"
msgstr "바로가기 추가" msgstr "단축키 추가"
#: ulng.rsopthotkeyscannotsetshortcut #: ulng.rsopthotkeyscannotsetshortcut
msgid "Cannot set shortcut" msgid "Cannot set shortcut"
msgstr "바로가기를 설정할 수 없음" msgstr "단축키를 설정할 수 없음"
#: ulng.rsopthotkeyschangeshortcut #: ulng.rsopthotkeyschangeshortcut
msgid "Change shortcut" msgid "Change shortcut"
msgstr "바로가기 변경" msgstr "단축키 변경"
#: ulng.rsopthotkeyscommand #: ulng.rsopthotkeyscommand
msgctxt "ulng.rsopthotkeyscommand" msgctxt "ulng.rsopthotkeyscommand"
@ -13212,12 +13251,12 @@ msgstr "명령"
#: ulng.rsopthotkeysdeletetrashcanoverrides #: ulng.rsopthotkeysdeletetrashcanoverrides
#, object-pascal-format #, object-pascal-format
msgid "Shortcut %s for cm_Delete has a parameter that overrides this setting. Do you want to change this parameter to use the global setting?" msgid "Shortcut %s for cm_Delete has a parameter that overrides this setting. Do you want to change this parameter to use the global setting?"
msgstr "cm_Delete의 바로가기 %s에 이 설정을 재정의하는 매개 변수가 있습니다. 전역 설정을 사용하려면 이 매개 변수를 변경하시겠습니까?" msgstr "cm_Delete 단축키 %s에는 이 설정을 재정의하는 매개변수가 있습니다. 이 매개변수를 전역 설정으로 변경하시겠습니까?"
#: ulng.rsopthotkeysdeletetrashcanparameterexists #: ulng.rsopthotkeysdeletetrashcanparameterexists
#, object-pascal-format #, object-pascal-format
msgid "Shortcut %s for cm_Delete needs to have a parameter changed to match shortcut %s. Do you want to change it?" msgid "Shortcut %s for cm_Delete needs to have a parameter changed to match shortcut %s. Do you want to change it?"
msgstr "cm_Delete의 바로가기 %s에 대해 바로가기 %s와 일치하도록 매개 변수를 변경해야 합니다. 변경하시겠습니까?" msgstr "cm_Delete 단축키 %s의 매개변수를 단축키 %s와 일치하도록 변경해야 합니다. 변경하시겠습니까?"
#: ulng.rsopthotkeysdescription #: ulng.rsopthotkeysdescription
msgctxt "ulng.rsopthotkeysdescription" msgctxt "ulng.rsopthotkeysdescription"
@ -13254,7 +13293,7 @@ msgstr "매개변수"
#: ulng.rsopthotkeyssetdeleteshortcut #: ulng.rsopthotkeyssetdeleteshortcut
msgid "Set shortcut to delete file" msgid "Set shortcut to delete file"
msgstr "파일 삭제 바로가기 설정" msgstr "파일 삭제 단축키 설정"
#: ulng.rsopthotkeysshortcutfordeletealreadyassigned #: ulng.rsopthotkeysshortcutfordeletealreadyassigned
#, object-pascal-format #, object-pascal-format
@ -13264,16 +13303,16 @@ msgstr "이 설정이 %s 단축키로 작동하려면 단축키 %s을(를) cm_De
#: ulng.rsopthotkeysshortcutfordeleteissequence #: ulng.rsopthotkeysshortcutfordeleteissequence
#, object-pascal-format #, object-pascal-format
msgid "Shortcut %s for cm_Delete is a sequence shortcut for which a hotkey with reversed Shift cannot be assigned. This setting might not work." msgid "Shortcut %s for cm_Delete is a sequence shortcut for which a hotkey with reversed Shift cannot be assigned. This setting might not work."
msgstr "cm_Delete의 바로가기 %s은 Shift가 반대인 단축키를 할당할 수 없는 시퀀스 단축키입니다. 이 설정이 작동하지 않을 수 있습니다." msgstr "cm_Delete 단축키 %s는 Shift 키를 반전시킨 단축키를 할당할 수 없는 시퀀스 단축키입니다. 이 설정이 작동하지 않을 수 있습니다."
#: ulng.rsopthotkeysshortcutused #: ulng.rsopthotkeysshortcutused
msgid "Shortcut in use" msgid "Shortcut in use"
msgstr "사용 중인 바로가기" msgstr "사용 중인 단축키"
#: ulng.rsopthotkeysshortcutusedtext1 #: ulng.rsopthotkeysshortcutusedtext1
#, object-pascal-format #, object-pascal-format
msgid "Shortcut %s is already used." msgid "Shortcut %s is already used."
msgstr "바로가기 %s이(가) 이미 사용되고 있습니다." msgstr "단축키 %s이(가) 이미 사용되고 있습니다."
#: ulng.rsopthotkeysshortcutusedtext2 #: ulng.rsopthotkeysshortcutusedtext2
#, object-pascal-format #, object-pascal-format
@ -13287,7 +13326,7 @@ msgstr "%s가 %s에 사용됨"
#: ulng.rsopthotkeysusedwithdifferentparams #: ulng.rsopthotkeysusedwithdifferentparams
msgid "used for this command but with different parameters" msgid "used for this command but with different parameters"
msgstr "이 명령에 사용되지만 매개 변수가 다른 경우" msgstr "이 명령에 사용되지만 매개변수가 다른 경우"
#: ulng.rsoptionseditorarchivers #: ulng.rsoptionseditorarchivers
msgid "Archivers" msgid "Archivers"
@ -13325,11 +13364,11 @@ msgstr "사용자 지정 열"
#: ulng.rsoptionseditordirectoryhotlist #: ulng.rsoptionseditordirectoryhotlist
msgctxt "ulng.rsoptionseditordirectoryhotlist" msgctxt "ulng.rsoptionseditordirectoryhotlist"
msgid "Directory Hotlist" msgid "Directory Hotlist"
msgstr "디렉터리 주요 목록" msgstr "자주 찾는 디렉터리 목록"
#: ulng.rsoptionseditordirectoryhotlistextra #: ulng.rsoptionseditordirectoryhotlistextra
msgid "Directory Hotlist Extra" msgid "Directory Hotlist Extra"
msgstr "디렉터리 주요 목록 추가 기능" msgstr "자주 찾는 디렉터리 목록 추가 기능"
#: ulng.rsoptionseditordraganddrop #: ulng.rsoptionseditordraganddrop
msgid "Drag & drop" msgid "Drag & drop"
@ -14036,7 +14075,7 @@ msgstr "기본 도구 모음에서 작업 선택"
#: ulng.rsstrtvmchoosehotdirectory #: ulng.rsstrtvmchoosehotdirectory
msgid "Choose your directory from Hot Directory:" msgid "Choose your directory from Hot Directory:"
msgstr "주요 디렉터리에서 디렉터리 선택:" msgstr "자주 찾는 디렉터리에서 디렉터리 선택:"
#: ulng.rsstrtvmchooseviewhistory #: ulng.rsstrtvmchooseviewhistory
msgid "Choose your directory from File View History" msgid "Choose your directory from File View History"
@ -14177,7 +14216,7 @@ msgstr "\"%\" 변수에 대한 도움말"
#: ulng.rsvarinputparam #: ulng.rsvarinputparam
msgid "Will request request user to enter a parameter with a default suggested value" msgid "Will request request user to enter a parameter with a default suggested value"
msgstr "사용자에게 기본 제안 값으로 매개 변수 입력을 요청합니다" msgstr "사용자에게 기본 제안 값으로 매개변수 입력을 요청합니다"
#: ulng.rsvarlastdircurrentpath #: ulng.rsvarlastdircurrentpath
msgid "Last directory of panel's path" msgid "Last directory of panel's path"
@ -14253,7 +14292,7 @@ msgstr "각 이름 앞에 \"-a\" 또는 원하는 이름을 붙입니다"
#: ulng.rsvarpromptuserforparam #: ulng.rsvarpromptuserforparam
msgid "%[Prompt user for param;Default value proposed]" msgid "%[Prompt user for param;Default value proposed]"
msgstr "%[매개 변수에 대한 사용자 알림 표시, 기본값 제안]" msgstr "%[매개변수에 대한 사용자 알림 표시, 기본값 제안]"
#: ulng.rsvarrelativepathandfilename #: ulng.rsvarrelativepathandfilename
msgid "Filename with relative path" msgid "Filename with relative path"

View file

@ -3422,7 +3422,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3430,8 +3430,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Hovedpassord"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3442,7 +3444,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3458,7 +3460,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3466,7 +3468,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11312,11 +11314,13 @@ msgstr "Ingen hurtigtast med \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Etter kommandonavn;Etter hurtigtast(gruppert);Etter hurtigtast(en pr rad" msgstr "Etter kommandonavn;Etter hurtigtast(gruppert);Etter hurtigtast(en pr rad"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11354,6 +11358,17 @@ msgstr "Liste med \"Søk...\" vinduer"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Innskrenk valg" msgstr "Innskrenk valg"
@ -11474,6 +11489,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11492,13 +11527,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11650,11 +11685,13 @@ msgstr "Skubb ut"
msgid "Extract here..." msgid "Extract here..."
msgstr "Pakk ut her..." msgstr "Pakk ut her..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12564,11 +12601,12 @@ msgid "Wipe directory %s"
msgstr "Sikker sletting av mappe %s" msgstr "Sikker sletting av mappe %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hovedpassord" msgstr "Hovedpassord"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Tast inn hovedpassordet:" msgstr "Tast inn hovedpassordet:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -2495,7 +2495,7 @@ msgstr "Maak map"
#: tfrmmain.actmapnetworkdrive.caption #: tfrmmain.actmapnetworkdrive.caption
msgid "Map Network Drive..." msgid "Map Network Drive..."
msgstr "Breng netwerkschijf in kaart..." msgstr "Netwerkschijf koppelen..."
#: tfrmmain.actmarkcurrentextension.caption #: tfrmmain.actmarkcurrentextension.caption
msgid "Select All with the Same E&xtension" msgid "Select All with the Same E&xtension"
@ -3350,7 +3350,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3358,8 +3358,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Hoofdwachtwoord"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3370,7 +3372,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3386,7 +3388,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3394,7 +3396,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10845,11 +10847,13 @@ msgstr "Geen sneltoets met 'ENTER'"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Op opdrachtnaam;Op sneltoets (gegroepeerd);Op sneltoets (één per rij)" msgstr "Op opdrachtnaam;Op sneltoets (gegroepeerd);Op sneltoets (één per rij)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10887,6 +10891,17 @@ msgstr "Lijst van vensters voor zoeken van bestanden"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Deselectie masker" msgstr "Deselectie masker"
@ -11007,6 +11022,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11025,13 +11060,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11183,11 +11218,13 @@ msgstr "Uitwerpen"
msgid "Extract here..." msgid "Extract here..."
msgstr "Pak hier uit..." msgstr "Pak hier uit..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12096,11 +12133,12 @@ msgid "Wipe directory %s"
msgstr "Wis map %s" msgstr "Wis map %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hoofdwachtwoord" msgstr "Hoofdwachtwoord"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Geef a.u.b. het hoofdwachtwoord in:" msgstr "Geef a.u.b. het hoofdwachtwoord in:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3422,7 +3422,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3430,8 +3430,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Hovudpassord"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3442,7 +3444,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3458,7 +3460,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3466,7 +3468,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11312,11 +11314,13 @@ msgstr "Ingen hurtigtast med \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Etter kommandonamn;Etter hurtigtast(gruppert);Etter hurtigtast(ein pr rad)" msgstr "Etter kommandonamn;Etter hurtigtast(gruppert);Etter hurtigtast(ein pr rad)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11354,6 +11358,17 @@ msgstr "Liste med \"Søk...\"-vindauge"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Innskrenk val" msgstr "Innskrenk val"
@ -11474,6 +11489,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11492,13 +11527,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11650,11 +11685,13 @@ msgstr "Skubb ut"
msgid "Extract here..." msgid "Extract here..."
msgstr "Pakk ut her..." msgstr "Pakk ut her..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12564,11 +12601,12 @@ msgid "Wipe directory %s"
msgstr "Sikker sletting av mappe %s" msgstr "Sikker sletting av mappe %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hovudpassord" msgstr "Hovudpassord"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Tast inn hovudpassordet:" msgstr "Tast inn hovudpassordet:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3328,7 +3328,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3336,8 +3336,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Hasło główne"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3348,7 +3350,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3364,7 +3366,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3372,7 +3374,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10774,11 +10776,13 @@ msgstr "Brak skrótu z \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Wg nazwy polecenia;Wg klawisza skrótu (pogrupowane);Wg klawisza skrótu (po jednym w wierszu)" msgstr "Wg nazwy polecenia;Wg klawisza skrótu (pogrupowane);Wg klawisza skrótu (po jednym w wierszu)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10816,6 +10820,17 @@ msgstr "Lista okien \"Znajdź pliki\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Maska odznaczania" msgstr "Maska odznaczania"
@ -10936,6 +10951,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10954,13 +10989,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11112,11 +11147,13 @@ msgstr "Wysuń"
msgid "Extract here..." msgid "Extract here..."
msgstr "Wypakuj tutaj..." msgstr "Wypakuj tutaj..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12025,11 +12062,12 @@ msgid "Wipe directory %s"
msgstr "Wyczyść katalog %s" msgstr "Wyczyść katalog %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hasło główne" msgstr "Hasło główne"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Wprowadź hasło główne:" msgstr "Wprowadź hasło główne:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3334,7 +3334,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3342,7 +3342,8 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "" msgstr ""
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
@ -3354,7 +3355,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3370,7 +3371,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3378,7 +3379,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10787,11 +10788,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10829,6 +10832,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "" msgstr ""
@ -10944,6 +10958,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10962,13 +10996,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11118,11 +11152,13 @@ msgstr ""
msgid "Extract here..." msgid "Extract here..."
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12013,11 +12049,12 @@ msgid "Wipe directory %s"
msgstr "" msgstr ""
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "" msgstr ""
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "" msgstr ""
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3401,7 +3401,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3409,8 +3409,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Senha mestra"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3421,7 +3423,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3437,7 +3439,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3445,7 +3447,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11044,11 +11046,13 @@ msgstr "Sem atalho com \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Por nome de comando;Por tecla de atalho (agrupado);Por tecla de atalho (um por linha)" msgstr "Por nome de comando;Por tecla de atalho (agrupado);Por tecla de atalho (um por linha)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11086,6 +11090,17 @@ msgstr "Lista de janelas \"Localizar ficheiros\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Desseleccionar máscara" msgstr "Desseleccionar máscara"
@ -11201,6 +11216,26 @@ msgstr "Revelar no localizador"
msgid "Finder" msgid "Finder"
msgstr "Localizador" msgstr "Localizador"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11219,13 +11254,13 @@ msgstr "Alternar modo de divisão horizontal"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "HorzSplit" msgstr "HorzSplit"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11375,11 +11410,13 @@ msgstr "Ejectar"
msgid "Extract here..." msgid "Extract here..."
msgstr "Extrair aqui..." msgstr "Extrair aqui..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12288,11 +12325,12 @@ msgid "Wipe directory %s"
msgstr "Limpar pasta %s" msgstr "Limpar pasta %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Senha mestra" msgstr "Senha mestra"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Por favor insira a senha mestra:" msgstr "Por favor insira a senha mestra:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3455,7 +3455,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3463,8 +3463,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Senha Mestra"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3475,7 +3477,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3491,7 +3493,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3499,7 +3501,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11254,11 +11256,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11296,6 +11300,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Remover seleção da máscara" msgstr "Remover seleção da máscara"
@ -11416,6 +11431,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11434,13 +11469,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11592,11 +11627,13 @@ msgstr "Ejetar"
msgid "Extract here..." msgid "Extract here..."
msgstr "Extrair aqui..." msgstr "Extrair aqui..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12505,11 +12542,12 @@ msgid "Wipe directory %s"
msgstr "Limpar pasta %s" msgstr "Limpar pasta %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Senha Mestra" msgstr "Senha Mestra"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Por favor introduza senha mestra:" msgstr "Por favor introduza senha mestra:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3419,7 +3419,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3427,8 +3427,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Parolă"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3439,7 +3441,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3455,7 +3457,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3463,7 +3465,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11126,11 +11128,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11168,6 +11172,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Deselectează masca" msgstr "Deselectează masca"
@ -11287,6 +11302,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11305,13 +11340,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11463,11 +11498,13 @@ msgstr "Scoate"
msgid "Extract here..." msgid "Extract here..."
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12359,11 +12396,12 @@ msgid "Wipe directory %s"
msgstr "Șterge definitiv dosarul %s" msgstr "Șterge definitiv dosarul %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Parolă" msgstr "Parolă"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Introduceți parola:" msgstr "Introduceți parola:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3391,16 +3391,17 @@ msgid "Test"
msgstr "Тест" msgstr "Тест"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "Создание мастер ключа" msgstr "Создание ключа"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "Трансформация ключа" msgstr "Трансформация ключа"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "Мастер ключ" msgid "Main Password"
msgstr "Главный пароль"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3411,8 +3412,8 @@ msgid "&Key derivation function:"
msgstr "&Функция формирования ключа:" msgstr "&Функция формирования ключа:"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "Мастер ключ преобразуется с помощью функции формирования ключа, что добавляет вычисления и усложняет атаки по словарю и угадывание." msgstr "Ключ преобразуется с помощью функции формирования ключа, что добавляет вычисления и усложняет атаки по словарю и угадывание."
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
@ -3427,16 +3428,16 @@ msgid "&Parallelism:"
msgstr "П&араллелизм:" msgstr "П&араллелизм:"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "&Мастер пароль:" msgstr "Па&роль:"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "П&овторите пароль:" msgstr "П&овторите пароль:"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "Укажите новый мастер-ключ, который будет использоваться для шифрования хранилища паролей." msgstr "Укажите новый ключ, который будет использоваться для шифрования хранилища паролей."
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
@ -11063,11 +11064,13 @@ msgstr "Не использовать \"Enter\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "По имени команды;По горячим клавишам (группир.);По горячим клавишам (по одной)" msgstr "По имени команды;По горячим клавишам (группир.);По горячим клавишам (по одной)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "Рекомендуется сначала загрузить файлы. В противном случае будет скопировано не содержимое файлов, а соответствующие файлы-заполнители, что приведет к появлению скрытых файлов с расширением .iCloud." msgstr "Рекомендуется сначала загрузить файлы. В противном случае будет скопировано не содержимое файлов, а соответствующие файлы-заполнители, что приведет к появлению скрытых файлов с расширением .iCloud."
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "Операция может содержать файлы, которые не были загружены. Продолжить в любом случае?" msgstr "Операция может содержать файлы, которые не были загружены. Продолжить в любом случае?"
@ -11105,6 +11108,17 @@ msgstr "Список окон \"Поиск файлов\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "Добавить теги выделенному (%d)" msgstr "Добавить теги выделенному (%d)"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Снять выделение по маске" msgstr "Снять выделение по маске"
@ -11220,6 +11234,26 @@ msgstr "Открыть в Finder"
msgid "Finder" msgid "Finder"
msgstr "Finder" msgstr "Finder"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11238,13 +11272,13 @@ msgstr "Переключить режим расположения панеле
msgid "HorzSplit" msgid "HorzSplit"
msgstr "Горизонтальное разделение" msgstr "Горизонтальное разделение"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "Диск iCloud" msgstr "Диск iCloud"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "Диск iCloud" msgstr "Диск iCloud"
@ -11394,11 +11428,13 @@ msgstr "Извлечь"
msgid "Extract here..." msgid "Extract here..."
msgstr "Распаковать здесь..." msgstr "Распаковать здесь..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "Загрузить сейчас" msgstr "Загрузить сейчас"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "Удалить загрузку" msgstr "Удалить загрузку"
@ -12318,11 +12354,12 @@ msgid "Wipe directory %s"
msgstr "Стирание каталога %s" msgstr "Стирание каталога %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Главный пароль:" msgstr "Главный пароль:"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Введите главный пароль:" msgstr "Введите главный пароль:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -1,9 +1,9 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Double Commander 1.1.22g\n" "Project-Id-Version: Double Commander 1.1.30g\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-11-15 11:15+0300\n" "POT-Creation-Date: 2022-11-15 11:15+0300\n"
"PO-Revision-Date: 2025-01-18 15:45+0100\n" "PO-Revision-Date: 2025-11-30 00:27+0100\n"
"Last-Translator: Jozef Gaal <preklady@mayday.sk>\n" "Last-Translator: Jozef Gaal <preklady@mayday.sk>\n"
"Language-Team: Jozef Gaál <preklady@mayday.sk>\n" "Language-Team: Jozef Gaál <preklady@mayday.sk>\n"
"Language: sk\n" "Language: sk\n"
@ -11,7 +11,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Native-Language: Slovenčina\n" "X-Native-Language: Slovenčina\n"
"X-Generator: Poedit 3.4.2\n" "X-Generator: Poedit 3.6\n"
#: fsyncdirsdlg.rscomparingpercent #: fsyncdirsdlg.rscomparingpercent
#, object-pascal-format #, object-pascal-format
@ -355,7 +355,7 @@ msgstr "Windows (CRLF)"
#: tfrmchecksumcalc.rghashalgorithm.caption #: tfrmchecksumcalc.rghashalgorithm.caption
msgid "Algorithm" msgid "Algorithm"
msgstr "" msgstr "Algoritmus"
#: tfrmchecksumverify.btnclose.caption #: tfrmchecksumverify.btnclose.caption
msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION" msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION"
@ -1006,7 +1006,7 @@ msgstr "Vybrať všetko"
#: tfrmeditor.actedittimedate.caption #: tfrmeditor.actedittimedate.caption
msgid "Time/Date" msgid "Time/Date"
msgstr "" msgstr "Čas/Dátum"
#: tfrmeditor.acteditundo.caption #: tfrmeditor.acteditundo.caption
msgctxt "TFRMEDITOR.ACTEDITUNDO.CAPTION" msgctxt "TFRMEDITOR.ACTEDITUNDO.CAPTION"
@ -3333,58 +3333,58 @@ msgstr "Alebo zvoľte preddefinovaný typ výbe&ru:"
#: tfrmmasterkey.btntest.caption #: tfrmmasterkey.btntest.caption
msgid "Test" msgid "Test"
msgstr "" msgstr "Vyskúšať"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr "Vytvoriť kľúč"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "" msgstr "Transformácia kľúča"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "" msgid "Main Password"
msgstr "Hlavné heslo"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
msgstr "" msgstr "Čím viac iterácií, tým ťažšie sú slovníkové a odhadovacie útoky, ale aj načítanie/ukladanie hesiel trvá dlhšie."
#: tfrmmasterkey.lblfunction.caption #: tfrmmasterkey.lblfunction.caption
msgid "&Key derivation function:" msgid "&Key derivation function:"
msgstr "" msgstr "Funkcia odvodenia &kľúča:"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr "Kľúč sa transformuje pomocou funkcie odvodenia kľúča. To pridáva pracovný faktor a sťažuje útoky pomocou slovníkov a hádania."
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
msgstr "" msgstr "&Iterácie:"
#: tfrmmasterkey.lblmemory.caption #: tfrmmasterkey.lblmemory.caption
msgid "&Memory:" msgid "&Memory:"
msgstr "" msgstr "Pa&mäť:"
#: tfrmmasterkey.lblparallelism.caption #: tfrmmasterkey.lblparallelism.caption
msgid "&Parallelism:" msgid "&Parallelism:"
msgstr "" msgstr "&Paralelizmus:"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr "&Heslo:"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "" msgstr "&Opakovať heslo:"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr "Určite nový kľúč, ktorý sa bude používať na šifrovanie úložiska hesiel."
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
#, fuzzy
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
msgid "MB" msgid "MB"
msgstr "MB" msgstr "MB"
@ -3569,7 +3569,7 @@ msgstr "Načítať poslednú predvoľbu"
#: tfrmmultirename.actloadnamesfromclipboard.caption #: tfrmmultirename.actloadnamesfromclipboard.caption
msgid "Load Names from Clipboard" msgid "Load Names from Clipboard"
msgstr "" msgstr "Načítať názvy zo schránky"
#: tfrmmultirename.actloadnamesfromfile.caption #: tfrmmultirename.actloadnamesfromfile.caption
msgid "Load Names from File..." msgid "Load Names from File..."
@ -3718,11 +3718,11 @@ msgstr "&Regulárne výrazy"
#: tfrmmultirename.cbrepext.caption #: tfrmmultirename.cbrepext.caption
msgid "E" msgid "E"
msgstr "" msgstr "E"
#: tfrmmultirename.cbrepext.hint #: tfrmmultirename.cbrepext.hint
msgid "Replace also in file extensions" msgid "Replace also in file extensions"
msgstr "" msgstr "Nahradiť aj v príponách súborov"
#: tfrmmultirename.cbusesubs.caption #: tfrmmultirename.cbusesubs.caption
msgid "&Use substitution" msgid "&Use substitution"
@ -4235,11 +4235,11 @@ msgstr "Binárny mód"
#: tfrmoptionscolors.dbbookmode.caption #: tfrmoptionscolors.dbbookmode.caption
msgid "Book Mode" msgid "Book Mode"
msgstr "Režim prezerania knihy" msgstr "Režim knihy"
#: tfrmoptionscolors.dbimagemode.caption #: tfrmoptionscolors.dbimagemode.caption
msgid "Image Mode" msgid "Image Mode"
msgstr "Typ obrázku" msgstr "Režim obrázku"
#: tfrmoptionscolors.dbtextmode.caption #: tfrmoptionscolors.dbtextmode.caption
msgid "Text Mode" msgid "Text Mode"
@ -4265,7 +4265,7 @@ msgstr "Kategória:"
#: tfrmoptionscolors.lbldeleted.caption #: tfrmoptionscolors.lbldeleted.caption
msgid "Deleted:" msgid "Deleted:"
msgstr "Vymazať:" msgstr "Vymaza:"
#: tfrmoptionscolors.lblerror.caption #: tfrmoptionscolors.lblerror.caption
msgid "Error:" msgid "Error:"
@ -4273,7 +4273,7 @@ msgstr "Chyba:"
#: tfrmoptionscolors.lblimagebackground1.caption #: tfrmoptionscolors.lblimagebackground1.caption
msgid "Background 1:" msgid "Background 1:"
msgstr "Pozadie 2:" msgstr "Pozadie 1:"
#: tfrmoptionscolors.lblimagebackground2.caption #: tfrmoptionscolors.lblimagebackground2.caption
msgctxt "tfrmoptionscolors.lblimagebackground2.caption" msgctxt "tfrmoptionscolors.lblimagebackground2.caption"
@ -4286,19 +4286,19 @@ msgstr "&Indikátor Zadnej Farby:"
#: tfrmoptionscolors.lblindcolor.caption #: tfrmoptionscolors.lblindcolor.caption
msgid "&Indicator Fore Color:" msgid "&Indicator Fore Color:"
msgstr "&Indikátor Prednej Farby:" msgstr "&Indikátor farby popredia:"
#: tfrmoptionscolors.lblindthresholdcolor.caption #: tfrmoptionscolors.lblindthresholdcolor.caption
msgid "Indicator &Threshold Color:" msgid "Indicator &Threshold Color:"
msgstr "&Indikátor Prednej Farby:" msgstr "Indikátor &hraničnej farby:"
#: tfrmoptionscolors.lblinformation.caption #: tfrmoptionscolors.lblinformation.caption
msgid "Information:" msgid "Information:"
msgstr "Nastavenie:" msgstr "Informácie:"
#: tfrmoptionscolors.lblleft.caption #: tfrmoptionscolors.lblleft.caption
msgid "Left:" msgid "Left:"
msgstr "&Ľavý:" msgstr "Ľavý:"
#: tfrmoptionscolors.lblmodified.caption #: tfrmoptionscolors.lblmodified.caption
msgctxt "tfrmoptionscolors.lblmodified.caption" msgctxt "tfrmoptionscolors.lblmodified.caption"
@ -4312,7 +4312,7 @@ msgstr "Upravený:"
#: tfrmoptionscolors.lblright.caption #: tfrmoptionscolors.lblright.caption
msgid "Right:" msgid "Right:"
msgstr "&Pravý:" msgstr "Pravý:"
#: tfrmoptionscolors.lblsuccess.caption #: tfrmoptionscolors.lblsuccess.caption
msgctxt "tfrmoptionscolors.lblsuccess.caption" msgctxt "tfrmoptionscolors.lblsuccess.caption"
@ -4325,7 +4325,7 @@ msgstr "Neznáme:"
#: tfrmoptionscolors.rgdarkmode.caption #: tfrmoptionscolors.rgdarkmode.caption
msgid "State" msgid "State"
msgstr "Otočiť" msgstr "Stav"
#: tfrmoptionscolumnsview.cbcolumnstitlelikevalues.caption #: tfrmoptionscolumnsview.cbcolumnstitlelikevalues.caption
msgid "Column titles alignment &like values" msgid "Column titles alignment &like values"
@ -5307,7 +5307,7 @@ msgstr "Umožňuje odsadiť striešku, keď sa nový riadok vytvorí pomocou <En
#: tfrmoptionseditor.chkgroupundo.caption #: tfrmoptionseditor.chkgroupundo.caption
msgid "Group Undo" msgid "Group Undo"
msgstr "Skupina" msgstr "Zoskupiť zrušenie"
#: tfrmoptionseditor.chkgroupundo.hint #: tfrmoptionseditor.chkgroupundo.hint
msgid "All continuous changes of the same type will be processed in one call instead of undoing/redoing each one" msgid "All continuous changes of the same type will be processed in one call instead of undoing/redoing each one"
@ -6545,12 +6545,12 @@ msgstr "Ovládanie"
#: tfrmoptionsicloud.appslistview.columns[0].caption #: tfrmoptionsicloud.appslistview.columns[0].caption
msgctxt "tfrmoptionsicloud.appslistview.columns[0].caption" msgctxt "tfrmoptionsicloud.appslistview.columns[0].caption"
msgid "Applications" msgid "Applications"
msgstr "" msgstr "Aplikácie"
#: tfrmoptionsicloud.appslistview.columns[1].caption #: tfrmoptionsicloud.appslistview.columns[1].caption
msgctxt "tfrmoptionsicloud.appslistview.columns[1].caption" msgctxt "tfrmoptionsicloud.appslistview.columns[1].caption"
msgid "Count of Contents" msgid "Count of Contents"
msgstr "" msgstr "Obsah"
#: tfrmoptionsicons.cbiconsexclude.caption #: tfrmoptionsicons.cbiconsexclude.caption
msgctxt "TFRMOPTIONSICONS.CBICONSEXCLUDE.CAPTION" msgctxt "TFRMOPTIONSICONS.CBICONSEXCLUDE.CAPTION"
@ -6939,7 +6939,7 @@ msgstr "Kliknutím na ikonu"
#: tfrmoptionsmouse.chkzoomwithctrlwheel.caption #: tfrmoptionsmouse.chkzoomwithctrlwheel.caption
msgctxt "tfrmoptionsmouse.chkzoomwithctrlwheel.caption" msgctxt "tfrmoptionsmouse.chkzoomwithctrlwheel.caption"
msgid "Zoom with Ctrl + Scroll Wheel" msgid "Zoom with Ctrl + Scroll Wheel"
msgstr "" msgstr "Zväčšenie pomocou klávesy Ctrl + kolieska myši"
#: tfrmoptionsmouse.gbopenwith.caption #: tfrmoptionsmouse.gbopenwith.caption
msgctxt "tfrmoptionsmouse.gbopenwith.caption" msgctxt "tfrmoptionsmouse.gbopenwith.caption"
@ -6955,7 +6955,6 @@ msgid "Selection"
msgstr "Výber" msgstr "Výber"
#: tfrmoptionsmouse.gbzoom.caption #: tfrmoptionsmouse.gbzoom.caption
#, fuzzy
msgctxt "tfrmoptionsmouse.gbzoom.caption" msgctxt "tfrmoptionsmouse.gbzoom.caption"
msgid "Zoom" msgid "Zoom"
msgstr "Priblíženie" msgstr "Priblíženie"
@ -7185,11 +7184,9 @@ msgid "File name"
msgstr "Názov súboru" msgstr "Názov súboru"
#: tfrmoptionspluginswfx.lblplugindescription.caption #: tfrmoptionspluginswfx.lblplugindescription.caption
#, fuzzy
#| msgid "Fi&le system plugins allow access to disks inaccessible by operating system or to external devices like Palm/PocketPC."
msgctxt "tfrmoptionspluginswfx.lblplugindescription.caption" msgctxt "tfrmoptionspluginswfx.lblplugindescription.caption"
msgid "Fi&le system plugins allow access to disks inaccessible by operating system or to external devices like smartphones." msgid "Fi&le system plugins allow access to disks inaccessible by operating system or to external devices like smartphones."
msgstr "Zásuvné moduly súborových systémov umožnia prístup k bežne nedostupným médiám ako sú napr. externé zariadenia (Palm/PocketPC)." msgstr "Zásuvné moduly súborového systému umožňujú prístup k diskom, ktoré sú pre operačný systém nedostupné, alebo k externým zariadeniam, ako sú smartfóny."
#: tfrmoptionspluginswfx.stgplugins.columns[0].title.caption #: tfrmoptionspluginswfx.stgplugins.columns[0].title.caption
msgctxt "tfrmoptionspluginswfx.stgplugins.columns[0].title.caption" msgctxt "tfrmoptionspluginswfx.stgplugins.columns[0].title.caption"
@ -8186,7 +8183,7 @@ msgstr "Zmeňte farbu na ľavej strane a uvidíte tu náhľad toho, ako budú vy
#: tfrmoptionsviewer.gbinternalviewer.caption #: tfrmoptionsviewer.gbinternalviewer.caption
msgid "Internal viewer options" msgid "Internal viewer options"
msgstr "Možnosti interného editora" msgstr "Možnosti interného prehliadača"
#: tfrmoptionsviewer.lblnumbercolumnsviewer.caption #: tfrmoptionsviewer.lblnumbercolumnsviewer.caption
msgid "&Number of columns in book viewer" msgid "&Number of columns in book viewer"
@ -8338,11 +8335,11 @@ msgstr "Rozlišovať veľkosť písmen"
#: tfrmquicksearch.sbdiacritics.caption #: tfrmquicksearch.sbdiacritics.caption
msgid "Ďï" msgid "Ďï"
msgstr "" msgstr "Ďï"
#: tfrmquicksearch.sbdiacritics.hint #: tfrmquicksearch.sbdiacritics.hint
msgid "Diacritics and ligatures" msgid "Diacritics and ligatures"
msgstr "" msgstr "Diakritika a ligatúry"
#: tfrmquicksearch.sbdirectories.caption #: tfrmquicksearch.sbdirectories.caption
msgid "D" msgid "D"
@ -8803,7 +8800,7 @@ msgstr "Double Commander"
#: tfrmstartingsplash.lblbuild.caption #: tfrmstartingsplash.lblbuild.caption
msgctxt "TFRMSTARTINGSPLASH.LBLBUILD.CAPTION" msgctxt "TFRMSTARTINGSPLASH.LBLBUILD.CAPTION"
msgid "Build" msgid "Build"
msgstr "Build" msgstr "Zostavenie"
#: tfrmstartingsplash.lblcommit.caption #: tfrmstartingsplash.lblcommit.caption
msgctxt "tfrmstartingsplash.lblcommit.caption" msgctxt "tfrmstartingsplash.lblcommit.caption"
@ -9314,7 +9311,7 @@ msgstr "Prejsť na riadok"
#: tfrmviewer.actimagecenter.caption #: tfrmviewer.actimagecenter.caption
msgid "Center" msgid "Center"
msgstr "Centrovať" msgstr "Na stred"
#: tfrmviewer.actloadnextfile.caption #: tfrmviewer.actloadnextfile.caption
msgid "&Next" msgid "&Next"
@ -9322,7 +9319,7 @@ msgstr "&Další"
#: tfrmviewer.actloadnextfile.hint #: tfrmviewer.actloadnextfile.hint
msgid "Load Next File" msgid "Load Next File"
msgstr "Načítať Nasledujúci Súbor" msgstr "Načítať nasledujúci súbor"
#: tfrmviewer.actloadprevfile.caption #: tfrmviewer.actloadprevfile.caption
msgid "&Previous" msgid "&Previous"
@ -9330,7 +9327,7 @@ msgstr "&Predchádzajúci"
#: tfrmviewer.actloadprevfile.hint #: tfrmviewer.actloadprevfile.hint
msgid "Load Previous File" msgid "Load Previous File"
msgstr "Načítať Predchádzajúci Súbor" msgstr "Načítať predchádzajúci súbor"
#: tfrmviewer.actmirrorhorz.caption #: tfrmviewer.actmirrorhorz.caption
msgid "Mirror Horizontally" msgid "Mirror Horizontally"
@ -10116,7 +10113,6 @@ msgid " Modifies: "
msgstr " Upraví: " msgstr " Upraví: "
#: ulng.rsdiffshow #: ulng.rsdiffshow
#, fuzzy
msgctxt "ulng.rsdiffshow" msgctxt "ulng.rsdiffshow"
msgid "&Show" msgid "&Show"
msgstr "&Zobraziť" msgstr "&Zobraziť"
@ -10330,19 +10326,19 @@ msgstr "Prejsť na riadok"
#: ulng.rsedithintcursorpos #: ulng.rsedithintcursorpos
msgid "Cursor Position" msgid "Cursor Position"
msgstr "" msgstr "Poloha kurzora"
#: ulng.rsedithintinsertmode #: ulng.rsedithintinsertmode
msgid "Insert Mode" msgid "Insert Mode"
msgstr "" msgstr "Režim vkladania"
#: ulng.rsedithintmodified #: ulng.rsedithintmodified
msgid "Modified" msgid "Modified"
msgstr "" msgstr "Upravené"
#: ulng.rsedithintselectionmode #: ulng.rsedithintselectionmode
msgid "Selection Mode" msgid "Selection Mode"
msgstr "" msgstr "Režim výberu"
#: ulng.rseditnewfile #: ulng.rseditnewfile
msgid "new.txt" msgid "new.txt"
@ -10376,23 +10372,23 @@ msgstr "Nahradiť"
#: ulng.rseditstatinsertmodeins #: ulng.rseditstatinsertmodeins
msgid "INS" msgid "INS"
msgstr "" msgstr "INS"
#: ulng.rseditstatinsertmodeovr #: ulng.rseditstatinsertmodeovr
msgid "OVR" msgid "OVR"
msgstr "" msgstr "OVR"
#: ulng.rseditstatselmodecol #: ulng.rseditstatselmodecol
msgid "COL" msgid "COL"
msgstr "" msgstr "COL"
#: ulng.rseditstatselmodeline #: ulng.rseditstatselmodeline
msgid "LINE" msgid "LINE"
msgstr "" msgstr "LINE"
#: ulng.rseditstatselmodenorm #: ulng.rseditstatselmodenorm
msgid "NORM" msgid "NORM"
msgstr "" msgstr "NORM"
#: ulng.rseditwithexternaleditor #: ulng.rseditwithexternaleditor
msgid "with external editor" msgid "with external editor"
@ -10808,13 +10804,15 @@ msgstr "Žiadna skratka pomocou \"ENTER\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "Podľa názvu príkazu;Podľa kláv. skratky (zoskupené);Podľa kláv. skratky (po riadkoch)" msgstr "Podľa názvu príkazu;Podľa kláv. skratky (zoskupené);Podľa kláv. skratky (po riadkoch)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr "Odporúča sa najskôr stiahnuť súbory. V opačnom prípade sa nekopíruje obsah súborov, ale príslušné zástupné súbory, čo bude mať za následok skryté súbory s príponou .iCloud."
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr "Operácia môže obsahovať súbory, ktoré neboli stiahnuté, pokračovať aj tak?"
#: ulng.rsimporttoolbarproblem #: ulng.rsimporttoolbarproblem
msgid "Cannot find reference to default bar file" msgid "Cannot find reference to default bar file"
@ -10848,6 +10846,17 @@ msgstr "Zoznam okien \"Nájsť súbory\""
#: ulng.rsmacosassignfindertagstomultiitems #: ulng.rsmacosassignfindertagstomultiitems
#, object-pascal-format #, object-pascal-format
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "Priradiť štítky k %d položkám"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr "" msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
@ -10886,7 +10895,7 @@ msgstr "Pridať \"%s\""
#: ulng.rsmenumacoseditfindertags #: ulng.rsmenumacoseditfindertags
msgctxt "ulng.rsmenumacoseditfindertags" msgctxt "ulng.rsmenumacoseditfindertags"
msgid "Edit Finder Tags..." msgid "Edit Finder Tags..."
msgstr "Upraviť Finder štítky..." msgstr "Upraviť štítky Finder..."
#: ulng.rsmenumacosgrantpermissiontosupportfindertags #: ulng.rsmenumacosgrantpermissiontosupportfindertags
msgid "Grant \"Full Disk Access\" permission to support Finder Tags..." msgid "Grant \"Full Disk Access\" permission to support Finder Tags..."
@ -10899,7 +10908,7 @@ msgstr "Odstrániť \"%s\""
#: ulng.rsmenumacosshare #: ulng.rsmenumacosshare
msgid "Share..." msgid "Share..."
msgstr "Zbaliť sem..." msgstr "Zdieľať..."
#: ulng.rsmfstbiairdroptips #: ulng.rsmfstbiairdroptips
msgctxt "ulng.rsmfstbiairdroptips" msgctxt "ulng.rsmfstbiairdroptips"
@ -10942,7 +10951,7 @@ msgstr "Porovnať"
#: ulng.rsmfstbieditfindertagtips #: ulng.rsmfstbieditfindertagtips
msgctxt "ulng.rsmfstbieditfindertagtips" msgctxt "ulng.rsmfstbieditfindertagtips"
msgid "Edit Finder Tags..." msgid "Edit Finder Tags..."
msgstr "Upraviť Finder štítky..." msgstr "Upraviť štítky Finder..."
#: ulng.rsmfstbieditfindertagtitle #: ulng.rsmfstbieditfindertagtitle
msgid "EditTag" msgid "EditTag"
@ -10959,12 +10968,32 @@ msgstr "Upraviť"
#: ulng.rsmfstbifinderrevealtips #: ulng.rsmfstbifinderrevealtips
msgid "Reveal in Finder" msgid "Reveal in Finder"
msgstr "Zobraziť vo vyhľadávači" msgstr "Zobraziť v aplikácii Finder"
#: ulng.rsmfstbifinderrevealtitle #: ulng.rsmfstbifinderrevealtitle
msgid "Finder" msgid "Finder"
msgstr "Vyhľadávač" msgstr "Vyhľadávač"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10983,25 +11012,25 @@ msgstr "Prepnúť režim s horizontálnymi panelmi"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "Horizontálne rozdelenie" msgstr "Horizontálne rozdelenie"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr "iCloud Disk"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr "iCloud Disk"
#: ulng.rsmfstbinetworktips #: ulng.rsmfstbinetworktips
msgctxt "ulng.rsmfstbinetworktips" msgctxt "ulng.rsmfstbinetworktips"
msgid "network" msgid "network"
msgstr "" msgstr "sieť"
#: ulng.rsmfstbinetworktitle #: ulng.rsmfstbinetworktitle
msgctxt "ulng.rsmfstbinetworktitle" msgctxt "ulng.rsmfstbinetworktitle"
msgid "network" msgid "network"
msgstr "" msgstr "sieť"
#: ulng.rsmfstbiprivilegetips #: ulng.rsmfstbiprivilegetips
msgid "As a file manager, Double Command requires full disk access permissions. Clicking this button will pop up the macOS system settings page. Please add \"Double Commander.app\" to the \"Full Disk Access\" list to complete the authorization." msgid "As a file manager, Double Command requires full disk access permissions. Clicking this button will pop up the macOS system settings page. Please add \"Double Commander.app\" to the \"Full Disk Access\" list to complete the authorization."
@ -11139,13 +11168,15 @@ msgstr "Vysunúť"
msgid "Extract here..." msgid "Extract here..."
msgstr "Rozbaliť sem..." msgstr "Rozbaliť sem..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr "Stiahnuť teraz"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr "Odstrániť stiahnutie"
#: ulng.rsmnumount #: ulng.rsmnumount
msgid "Mount" msgid "Mount"
@ -11209,10 +11240,15 @@ msgid ""
"\n" "\n"
"It is recommended that you follow your usual practice and try to select only one directory when you receive this prompt." "It is recommended that you follow your usual practice and try to select only one directory when you receive this prompt."
msgstr "" msgstr ""
"Niektoré virtuálne súborové systémy obsahujú špecifické štruktúry priečinkov. Pri kopírovaní z nich do komprimovaného archívu je možné vybrať vždy len jeden priečinok, pokiaľ sa skutočné umiestnenia vybraných priečinkov nenachádzajú všetky v rovnakom nadradenom priečinku.\n"
"\n"
"Napríklad v prípade iCloud Disku by sa pri kopírovaní priečinka z koreňového priečinka do komprimovaného archívu, by sa mal vybrať len jeden priečinok.\n"
"\n"
"Odporúčame postupovať podľa bežnej praxe a pri zobrazení tejto výzvy sa pokúsiť vybrať len jeden priečinok."
#: ulng.rsmountedfilesourcecopymultifilestowcxdlgtitle #: ulng.rsmountedfilesourcecopymultifilestowcxdlgtitle
msgid "The operation is not supported" msgid "The operation is not supported"
msgstr "" msgstr "Operácia nie je podporovaná"
#: ulng.rsmsgaccount #: ulng.rsmsgaccount
msgid "Account:" msgid "Account:"
@ -11254,7 +11290,7 @@ msgstr "Ste si istí, že chcete túto operáciu zrušiť?"
#: ulng.rsmsgcannotchangetarget #: ulng.rsmsgcannotchangetarget
msgid "You cannot change a target location!" msgid "You cannot change a target location!"
msgstr "" msgstr "Nemôžete zmeniť cieľovú polohu!"
#: ulng.rsmsgcannotcopymoveitself #: ulng.rsmsgcannotcopymoveitself
#, object-pascal-format #, object-pascal-format
@ -11297,7 +11333,7 @@ msgstr "Potvrdenie parametra"
#: ulng.rsmsgcommandnotfound #: ulng.rsmsgcommandnotfound
#, object-pascal-format #, object-pascal-format
msgid "Command not found! (%s)" msgid "Command not found! (%s)"
msgstr "%s nebol nájdený!" msgstr "Príkaz nebol nájdený! (%s)"
#: ulng.rsmsgconfirmquit #: ulng.rsmsgconfirmquit
msgid "Are you sure you want to quit?" msgid "Are you sure you want to quit?"
@ -11944,12 +11980,12 @@ msgstr "Neplatný výber."
#: ulng.rsmsgkeytransformerror #: ulng.rsmsgkeytransformerror
#, object-pascal-format #, object-pascal-format
msgid "The key transformation failed (error code %d)!" msgid "The key transformation failed (error code %d)!"
msgstr "" msgstr "Transformácia kľúča zlyhala (kód chyby %d)!"
#: ulng.rsmsgkeytransformtime #: ulng.rsmsgkeytransformtime
#, object-pascal-format #, object-pascal-format
msgid "The key transformation took %f seconds." msgid "The key transformation took %f seconds."
msgstr "" msgstr "Transformácia kľúča trvala %f sekúnd."
#: ulng.rsmsgloadingfilelist #: ulng.rsmsgloadingfilelist
msgid "Loading file list..." msgid "Loading file list..."
@ -12052,11 +12088,12 @@ msgid "Wipe directory %s"
msgstr "Bezpečne vymazať priečinok %s" msgstr "Bezpečne vymazať priečinok %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Hlavné heslo" msgstr "Hlavné heslo"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Prosím, zadajte hlavné heslo:" msgstr "Prosím, zadajte hlavné heslo:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile
@ -13460,23 +13497,23 @@ msgstr "Zásuvné moduly"
#: ulng.rsoptionseditorpluginsdsx #: ulng.rsoptionseditorpluginsdsx
msgid "Search plugins" msgid "Search plugins"
msgstr "" msgstr "Zásuvné moduly vyhľadávania"
#: ulng.rsoptionseditorpluginswcx #: ulng.rsoptionseditorpluginswcx
msgid "Packer plugins" msgid "Packer plugins"
msgstr "" msgstr "Zásuvné moduly komprimácie"
#: ulng.rsoptionseditorpluginswdx #: ulng.rsoptionseditorpluginswdx
msgid "Content plugins" msgid "Content plugins"
msgstr "" msgstr "Zásuvné moduly pre obsah"
#: ulng.rsoptionseditorpluginswfx #: ulng.rsoptionseditorpluginswfx
msgid "File system plugins" msgid "File system plugins"
msgstr "" msgstr "Zásuvné moduly súborového systému"
#: ulng.rsoptionseditorpluginswlx #: ulng.rsoptionseditorpluginswlx
msgid "Viewer plugins" msgid "Viewer plugins"
msgstr "" msgstr "Zásuvné moduly pre zobrazenie"
#: ulng.rsoptionseditorquicksearch #: ulng.rsoptionseditorquicksearch
msgid "Quick search/filter" msgid "Quick search/filter"
@ -13600,10 +13637,8 @@ msgid "&Files;Di&rectories;Files a&nd Directories"
msgstr "Súbory;Priečinky;Súbory a Priečinky" msgstr "Súbory;Priečinky;Súbory a Priečinky"
#: ulng.rsoptsearchopt #: ulng.rsoptsearchopt
#, fuzzy
#| msgid "&Hide filter panel when not focused;Keep saving setting modifications for next session"
msgid "Ignore &diacritics and ligatures;&Hide filter panel when not focused;Keep saving setting modifications for next session" msgid "Ignore &diacritics and ligatures;&Hide filter panel when not focused;Keep saving setting modifications for next session"
msgstr "Skryť filter panelu, keď nie je aktívny;Ponechať zmeny uloženia nastavení pre ďalšiu reláciu" msgstr "Ignorovať &diakritiku a ligatúry;&Skryť panel filtrov, ak nie je aktívny;Ukladať zmeny nastavení pre ďalšiu reláciu"
#: ulng.rsoptsortcasesens #: ulng.rsoptsortcasesens
msgid "not case sensitive;according to locale settings (aAbBcC);first upper then lower case (ABCabc)" msgid "not case sensitive;according to locale settings (aAbBcC);first upper then lower case (ABCabc)"

View file

@ -3344,7 +3344,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3352,8 +3352,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Glavno geslo"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3364,7 +3366,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3380,7 +3382,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3388,7 +3390,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -10815,11 +10817,13 @@ msgstr "Ni tipkovne bližnjice s tipko »ENTER«"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "po imenu ukaza;po tipkovni bližnjici (skupinjeno);po tipkovni bližnjici (ena na vrstico)" msgstr "po imenu ukaza;po tipkovni bližnjici (skupinjeno);po tipkovni bližnjici (ena na vrstico)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -10857,6 +10861,17 @@ msgstr "Seznam oken dejavnih iskanj"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Maska odstranitve izbire" msgstr "Maska odstranitve izbire"
@ -10977,6 +10992,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10995,13 +11030,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11153,11 +11188,13 @@ msgstr "Izvrzi"
msgid "Extract here..." msgid "Extract here..."
msgstr "Odpakiraj v to mapo ..." msgstr "Odpakiraj v to mapo ..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12066,11 +12103,12 @@ msgid "Wipe directory %s"
msgstr "Neobnovljivo izbriši mapo %s" msgstr "Neobnovljivo izbriši mapo %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Glavno geslo" msgstr "Glavno geslo"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Vnesite glavno geslo:" msgstr "Vnesite glavno geslo:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3398,7 +3398,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3406,8 +3406,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Главна лозинка"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3418,7 +3420,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3434,7 +3436,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3442,7 +3444,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11046,11 +11048,13 @@ msgstr "Нема пречице са „ЕНТЕР“"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "По имену наредбе;По пречици дугмади (груписано);По пречици дугмади (један по реду)" msgstr "По имену наредбе;По пречици дугмади (груписано);По пречици дугмади (један по реду)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11088,6 +11092,17 @@ msgstr "Списак прозора „пронађи датотеке“"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Одзначи маску" msgstr "Одзначи маску"
@ -11208,6 +11223,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11226,13 +11261,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11384,11 +11419,13 @@ msgstr "Избаци"
msgid "Extract here..." msgid "Extract here..."
msgstr "Извуци овде..." msgstr "Извуци овде..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12297,11 +12334,12 @@ msgid "Wipe directory %s"
msgstr "Избриши потпуно фасциклу %s" msgstr "Избриши потпуно фасциклу %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Главна лозинка" msgstr "Главна лозинка"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Унесите поново главну лозинку:" msgstr "Унесите поново главну лозинку:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3455,7 +3455,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3463,8 +3463,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Glavna lozinka"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3475,7 +3477,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3491,7 +3493,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3499,7 +3501,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11322,11 +11324,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11364,6 +11368,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Odznači masku" msgstr "Odznači masku"
@ -11483,6 +11498,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11501,13 +11536,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11659,11 +11694,13 @@ msgstr "Izbaci"
msgid "Extract here..." msgid "Extract here..."
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12593,11 +12630,12 @@ msgid "Wipe directory %s"
msgstr "Izbriši potpuno fasciklu %s" msgstr "Izbriši potpuno fasciklu %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Glavna lozinka" msgstr "Glavna lozinka"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Unesite ponovo glavnu lozinku:" msgstr "Unesite ponovo glavnu lozinku:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3586,7 +3586,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3594,8 +3594,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Ana şifre"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3606,7 +3608,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3622,7 +3624,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3630,7 +3632,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11468,11 +11470,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11510,6 +11514,17 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Maske seçimini kaldır" msgstr "Maske seçimini kaldır"
@ -11628,6 +11643,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11646,13 +11681,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11804,11 +11839,13 @@ msgstr "Çıkar"
msgid "Extract here..." msgid "Extract here..."
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12708,11 +12745,12 @@ msgid "Wipe directory %s"
msgstr "" msgstr ""
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Ana şifre" msgstr "Ana şifre"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Lütfen ana şifreyi girin:" msgstr "Lütfen ana şifreyi girin:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -3414,7 +3414,7 @@ msgid "Test"
msgstr "" msgstr ""
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr ""
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
@ -3422,8 +3422,10 @@ msgid "Key transformation"
msgstr "" msgstr ""
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" #, fuzzy
msgstr "" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgid "Main Password"
msgstr "Суперпароль"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
@ -3434,7 +3436,7 @@ msgid "&Key derivation function:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr ""
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
@ -3450,7 +3452,7 @@ msgid "&Parallelism:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr ""
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
@ -3458,7 +3460,7 @@ msgid "&Repeat password:"
msgstr "" msgstr ""
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr ""
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
@ -11167,11 +11169,13 @@ msgstr "Не застосовувати \"Enter\""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "На ім'я команди;По гарячих клавішах (групов.);По гарячих клавішах (по одній)" msgstr "На ім'я команди;По гарячих клавішах (групов.);По гарячих клавішах (по одній)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "" msgstr ""
@ -11209,6 +11213,17 @@ msgstr "Список вікон \"Пошук файлів\""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "" msgstr ""
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "Маска зняття вибору" msgstr "Маска зняття вибору"
@ -11329,6 +11344,26 @@ msgstr ""
msgid "Finder" msgid "Finder"
msgstr "" msgstr ""
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr ""
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr ""
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11347,13 +11382,13 @@ msgstr ""
msgid "HorzSplit" msgid "HorzSplit"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "" msgstr ""
@ -11505,11 +11540,13 @@ msgstr "Витягнути"
msgid "Extract here..." msgid "Extract here..."
msgstr "Розпакувати тут..." msgstr "Розпакувати тут..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "" msgstr ""
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "" msgstr ""
@ -12421,11 +12458,12 @@ msgid "Wipe directory %s"
msgstr "Знищення каталогу %s" msgstr "Знищення каталогу %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "Суперпароль" msgstr "Суперпароль"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "Будь ласка, введіть суперпароль:" msgstr "Будь ласка, введіть суперпароль:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -354,7 +354,7 @@ msgstr ""
#: tfrmchecksumcalc.rghashalgorithm.caption #: tfrmchecksumcalc.rghashalgorithm.caption
msgid "Algorithm" msgid "Algorithm"
msgstr "" msgstr "算法"
#: tfrmchecksumverify.btnclose.caption #: tfrmchecksumverify.btnclose.caption
msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION" msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION"
@ -3332,55 +3332,56 @@ msgstr "或选择预定义的选择类型(&R)"
#: tfrmmasterkey.btntest.caption #: tfrmmasterkey.btntest.caption
msgid "Test" msgid "Test"
msgstr "" msgstr "测试"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr "创建密钥"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "" msgstr "密钥变换"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "" msgid "Main Password"
msgstr "主密码"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
msgstr "" msgstr "迭代次数越多,字典攻击和猜测攻击就越难,但密码存储的加载/保存也需要更多时间。"
#: tfrmmasterkey.lblfunction.caption #: tfrmmasterkey.lblfunction.caption
msgid "&Key derivation function:" msgid "&Key derivation function:"
msgstr "" msgstr "密钥变换函数(&K)"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr "密钥通过密钥变换函数进行转换。这增加了工作量,使字典攻击和猜测攻击更加困难。"
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
msgstr "" msgstr "迭代次数(&I)"
#: tfrmmasterkey.lblmemory.caption #: tfrmmasterkey.lblmemory.caption
msgid "&Memory:" msgid "&Memory:"
msgstr "" msgstr "内存(&M)"
#: tfrmmasterkey.lblparallelism.caption #: tfrmmasterkey.lblparallelism.caption
msgid "&Parallelism:" msgid "&Parallelism:"
msgstr "" msgstr "并行(&P)"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr "密码(&W)"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "" msgstr "重复密码(&R)"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr "指定一个新密钥,该密钥将用于加密密码存储。"
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
@ -3567,7 +3568,7 @@ msgstr "加载上次预设"
#: tfrmmultirename.actloadnamesfromclipboard.caption #: tfrmmultirename.actloadnamesfromclipboard.caption
msgid "Load Names from Clipboard" msgid "Load Names from Clipboard"
msgstr "" msgstr "从剪贴板加载名称"
#: tfrmmultirename.actloadnamesfromfile.caption #: tfrmmultirename.actloadnamesfromfile.caption
msgid "Load Names from File..." msgid "Load Names from File..."
@ -3720,7 +3721,7 @@ msgstr ""
#: tfrmmultirename.cbrepext.hint #: tfrmmultirename.cbrepext.hint
msgid "Replace also in file extensions" msgid "Replace also in file extensions"
msgstr "" msgstr "也在文件扩展名中替换"
#: tfrmmultirename.cbusesubs.caption #: tfrmmultirename.cbusesubs.caption
msgid "&Use substitution" msgid "&Use substitution"
@ -10801,11 +10802,13 @@ msgstr "没有带回车键的快捷键"
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "按命令名称;按快捷键(分组);按快捷键(每行一个)" msgstr "按命令名称;按快捷键(分组);按快捷键(每行一个)"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "建议先完成文件下载后再操作。否则,复制的不是文件本身的内容,而是对应的占位符文件,这只会复制以.iCloud为扩展名的隐藏文件。" msgstr "建议先完成文件下载后再操作。否则,复制的不是文件本身的内容,而是对应的占位符文件,这只会复制以.iCloud为扩展名的隐藏文件。"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "操作可能包含未下载的文件,仍然继续吗?" msgstr "操作可能包含未下载的文件,仍然继续吗?"
@ -10843,6 +10846,20 @@ msgstr "<查找文件> 窗口列表"
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "将标签分配给%d个项目" msgstr "将标签分配给%d个项目"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
"URL:\n"
"(样例smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "不选择掩码" msgstr "不选择掩码"
@ -10961,6 +10978,26 @@ msgctxt "ulng.rsmfstbifinderrevealtitle"
msgid "Finder" msgid "Finder"
msgstr "访达" msgstr "访达"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr "返回"
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr "返回"
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr "前进"
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr "前进"
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -10981,13 +11018,13 @@ msgctxt "ulng.rsmfstbihorzsplittitle"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "水平分隔" msgstr "水平分隔"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud云盘" msgstr "iCloud云盘"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud云盘" msgstr "iCloud云盘"
@ -11155,11 +11192,13 @@ msgstr "弹出"
msgid "Extract here..." msgid "Extract here..."
msgstr "解压缩到此处..." msgstr "解压缩到此处..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "现在下载" msgstr "现在下载"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "移除下载项" msgstr "移除下载项"
@ -12073,11 +12112,12 @@ msgid "Wipe directory %s"
msgstr "擦除文件夹 %s" msgstr "擦除文件夹 %s"
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "主密码" msgstr "主密码"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "请输入主密码:" msgstr "请输入主密码:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile

View file

@ -361,7 +361,7 @@ msgstr ""
#: tfrmchecksumcalc.rghashalgorithm.caption #: tfrmchecksumcalc.rghashalgorithm.caption
msgid "Algorithm" msgid "Algorithm"
msgstr "" msgstr "算法"
#: tfrmchecksumverify.btnclose.caption #: tfrmchecksumverify.btnclose.caption
msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION" msgctxt "TFRMCHECKSUMVERIFY.BTNCLOSE.CAPTION"
@ -3369,7 +3369,7 @@ msgstr ""
#: tfrmmaskinputdlg.lblattributes.caption #: tfrmmaskinputdlg.lblattributes.caption
msgid "Attri&butes:" msgid "Attri&butes:"
msgstr "" msgstr "屬性 (&B):"
#: tfrmmaskinputdlg.lblprompt.caption #: tfrmmaskinputdlg.lblprompt.caption
msgid "Input Mask:" msgid "Input Mask:"
@ -3381,55 +3381,56 @@ msgstr "選擇預先定義好的類型 (&R) :"
#: tfrmmasterkey.btntest.caption #: tfrmmasterkey.btntest.caption
msgid "Test" msgid "Test"
msgstr "" msgstr "測試"
#: tfrmmasterkey.caption #: tfrmmasterkey.caption
msgid "Create Master Key" msgid "Create Key"
msgstr "" msgstr "建立密鑰"
#: tfrmmasterkey.gbkeytransform.caption #: tfrmmasterkey.gbkeytransform.caption
msgid "Key transformation" msgid "Key transformation"
msgstr "" msgstr "密鑰轉換"
#: tfrmmasterkey.gbmasterkey.caption #: tfrmmasterkey.gbmasterkey.caption
msgid "Master key" msgctxt "tfrmmasterkey.gbmasterkey.caption"
msgstr "" msgid "Main Password"
msgstr "主密碼"
#: tfrmmasterkey.lblfooter.caption #: tfrmmasterkey.lblfooter.caption
msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time." msgid "The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."
msgstr "" msgstr "迭代次數越多,字典攻擊和猜測攻擊就越難,但密碼儲存的載入/保存也需要更多時間。"
#: tfrmmasterkey.lblfunction.caption #: tfrmmasterkey.lblfunction.caption
msgid "&Key derivation function:" msgid "&Key derivation function:"
msgstr "" msgstr "密鑰轉換函數 (&K):"
#: tfrmmasterkey.lblheader.caption #: tfrmmasterkey.lblheader.caption
msgid "The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder." msgid "The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."
msgstr "" msgstr "密鑰透過密鑰轉換函數進行轉換。這增加了工作量,使字典攻擊和猜測攻擊更加困難。"
#: tfrmmasterkey.lbliterations.caption #: tfrmmasterkey.lbliterations.caption
msgid "&Iterations:" msgid "&Iterations:"
msgstr "" msgstr "迭代次數 (&I):"
#: tfrmmasterkey.lblmemory.caption #: tfrmmasterkey.lblmemory.caption
msgid "&Memory:" msgid "&Memory:"
msgstr "" msgstr "記憶體 (&M):"
#: tfrmmasterkey.lblparallelism.caption #: tfrmmasterkey.lblparallelism.caption
msgid "&Parallelism:" msgid "&Parallelism:"
msgstr "" msgstr "平行 (&P):"
#: tfrmmasterkey.lblpassword.caption #: tfrmmasterkey.lblpassword.caption
msgid "Master pass&word:" msgid "Pass&word:"
msgstr "" msgstr "密碼 (&W):"
#: tfrmmasterkey.lblrepeat.caption #: tfrmmasterkey.lblrepeat.caption
msgid "&Repeat password:" msgid "&Repeat password:"
msgstr "" msgstr "重複密碼 (&R):"
#: tfrmmasterkey.lbltext.caption #: tfrmmasterkey.lbltext.caption
msgid "Specify a new master key, which will be used to encrypt the password store." msgid "Specify a new key, which will be used to encrypt the password store."
msgstr "" msgstr "指定一個新密鑰,該密鑰將用於加密密碼儲存。"
#: tfrmmasterkey.lblunit.caption #: tfrmmasterkey.lblunit.caption
msgctxt "tfrmmasterkey.lblunit.caption" msgctxt "tfrmmasterkey.lblunit.caption"
@ -3535,7 +3536,7 @@ msgstr "副檔名"
#: tfrmmultirename.actanynamemask.caption #: tfrmmultirename.actanynamemask.caption
msgctxt "tfrmmultirename.actanynamemask.caption" msgctxt "tfrmmultirename.actanynamemask.caption"
msgid "Filename" msgid "Filename"
msgstr "" msgstr "檔案名稱"
#: tfrmmultirename.actclearextmask.caption #: tfrmmultirename.actclearextmask.caption
msgctxt "tfrmmultirename.actclearextmask.caption" msgctxt "tfrmmultirename.actclearextmask.caption"
@ -3583,15 +3584,15 @@ msgstr "刪除"
#: tfrmmultirename.actdropdownpresetlist.caption #: tfrmmultirename.actdropdownpresetlist.caption
msgid "Drop Down Presets List" msgid "Drop Down Presets List"
msgstr "" msgstr "下拉預設列表"
#: tfrmmultirename.acteditnames.caption #: tfrmmultirename.acteditnames.caption
msgid "Edit Names..." msgid "Edit Names..."
msgstr "" msgstr "編輯名稱..."
#: tfrmmultirename.acteditnewnames.caption #: tfrmmultirename.acteditnewnames.caption
msgid "Edit Current New Names..." msgid "Edit Current New Names..."
msgstr "" msgstr "編輯目前新名稱..."
#: tfrmmultirename.actextextmask.caption #: tfrmmultirename.actextextmask.caption
msgctxt "tfrmmultirename.actextextmask.caption" msgctxt "tfrmmultirename.actextextmask.caption"
@ -3610,69 +3611,69 @@ msgstr "編輯 (&E)"
#: tfrmmultirename.actinvokerelativepath.caption #: tfrmmultirename.actinvokerelativepath.caption
msgid "Invoke Relative Path Menu" msgid "Invoke Relative Path Menu"
msgstr "" msgstr "呼叫相對路徑選單"
#: tfrmmultirename.actloadlastpreset.caption #: tfrmmultirename.actloadlastpreset.caption
msgid "Load Last Preset" msgid "Load Last Preset"
msgstr "" msgstr "載入上次預設"
#: tfrmmultirename.actloadnamesfromclipboard.caption #: tfrmmultirename.actloadnamesfromclipboard.caption
msgid "Load Names from Clipboard" msgid "Load Names from Clipboard"
msgstr "" msgstr "從剪貼簿載入名稱"
#: tfrmmultirename.actloadnamesfromfile.caption #: tfrmmultirename.actloadnamesfromfile.caption
msgid "Load Names from File..." msgid "Load Names from File..."
msgstr "" msgstr "從檔案載入名稱..."
#: tfrmmultirename.actloadpreset.caption #: tfrmmultirename.actloadpreset.caption
msgid "Load Preset by Name or Index" msgid "Load Preset by Name or Index"
msgstr "" msgstr "按名稱或索引載入預設"
#: tfrmmultirename.actloadpreset1.caption #: tfrmmultirename.actloadpreset1.caption
msgid "Load Preset 1" msgid "Load Preset 1"
msgstr "" msgstr "載入預設 1"
#: tfrmmultirename.actloadpreset2.caption #: tfrmmultirename.actloadpreset2.caption
msgid "Load Preset 2" msgid "Load Preset 2"
msgstr "" msgstr "載入預設 2"
#: tfrmmultirename.actloadpreset3.caption #: tfrmmultirename.actloadpreset3.caption
msgid "Load Preset 3" msgid "Load Preset 3"
msgstr "" msgstr "載入預設 3"
#: tfrmmultirename.actloadpreset4.caption #: tfrmmultirename.actloadpreset4.caption
msgid "Load Preset 4" msgid "Load Preset 4"
msgstr "" msgstr "載入預設 4"
#: tfrmmultirename.actloadpreset5.caption #: tfrmmultirename.actloadpreset5.caption
msgid "Load Preset 5" msgid "Load Preset 5"
msgstr "" msgstr "載入預設 5"
#: tfrmmultirename.actloadpreset6.caption #: tfrmmultirename.actloadpreset6.caption
msgid "Load Preset 6" msgid "Load Preset 6"
msgstr "" msgstr "載入預設 6"
#: tfrmmultirename.actloadpreset7.caption #: tfrmmultirename.actloadpreset7.caption
msgid "Load Preset 7" msgid "Load Preset 7"
msgstr "" msgstr "載入預設 7"
#: tfrmmultirename.actloadpreset8.caption #: tfrmmultirename.actloadpreset8.caption
msgid "Load Preset 8" msgid "Load Preset 8"
msgstr "" msgstr "載入預設 8"
#: tfrmmultirename.actloadpreset9.caption #: tfrmmultirename.actloadpreset9.caption
msgid "Load Preset 9" msgid "Load Preset 9"
msgstr "" msgstr "載入預設 9"
#: tfrmmultirename.actnameextmask.caption #: tfrmmultirename.actnameextmask.caption
msgctxt "tfrmmultirename.actnameextmask.caption" msgctxt "tfrmmultirename.actnameextmask.caption"
msgid "Filename" msgid "Filename"
msgstr "" msgstr "檔案名稱"
#: tfrmmultirename.actnamenamemask.caption #: tfrmmultirename.actnamenamemask.caption
msgctxt "tfrmmultirename.actnamenamemask.caption" msgctxt "tfrmmultirename.actnamenamemask.caption"
msgid "Filename" msgid "Filename"
msgstr "" msgstr "檔案名稱"
#: tfrmmultirename.actplgnextmask.caption #: tfrmmultirename.actplgnextmask.caption
msgctxt "tfrmmultirename.actplgnextmask.caption" msgctxt "tfrmmultirename.actplgnextmask.caption"
@ -3711,11 +3712,11 @@ msgstr "另存新檔 (A)..."
#: tfrmmultirename.actshowpresetsmenu.caption #: tfrmmultirename.actshowpresetsmenu.caption
msgid "Show Preset Menu" msgid "Show Preset Menu"
msgstr "" msgstr "顯示預設選單"
#: tfrmmultirename.actsortpresets.caption #: tfrmmultirename.actsortpresets.caption
msgid "Sort" msgid "Sort"
msgstr "" msgstr "排序"
#: tfrmmultirename.acttimeextmask.caption #: tfrmmultirename.acttimeextmask.caption
msgctxt "tfrmmultirename.acttimeextmask.caption" msgctxt "tfrmmultirename.acttimeextmask.caption"
@ -3729,7 +3730,7 @@ msgstr "時間"
#: tfrmmultirename.actviewrenamelogfile.caption #: tfrmmultirename.actviewrenamelogfile.caption
msgid "View Rename Log File" msgid "View Rename Log File"
msgstr "" msgstr "查看重新命名日誌文件"
#: tfrmmultirename.caption #: tfrmmultirename.caption
msgctxt "tfrmmultirename.caption" msgctxt "tfrmmultirename.caption"
@ -3752,7 +3753,7 @@ msgstr "記錄結果(&L)"
#: tfrmmultirename.cblogappend.caption #: tfrmmultirename.cblogappend.caption
msgid "Append" msgid "Append"
msgstr "" msgstr "追加"
#: tfrmmultirename.cbonlyfirst.caption #: tfrmmultirename.cbonlyfirst.caption
msgid "1x" msgid "1x"
@ -3760,7 +3761,7 @@ msgstr ""
#: tfrmmultirename.cbonlyfirst.hint #: tfrmmultirename.cbonlyfirst.hint
msgid "Replace only once per file" msgid "Replace only once per file"
msgstr "" msgstr "每個檔案僅替換一次"
#: tfrmmultirename.cbregexp.caption #: tfrmmultirename.cbregexp.caption
msgctxt "TFRMMULTIRENAME.CBREGEXP.CAPTION" msgctxt "TFRMMULTIRENAME.CBREGEXP.CAPTION"
@ -3773,7 +3774,7 @@ msgstr ""
#: tfrmmultirename.cbrepext.hint #: tfrmmultirename.cbrepext.hint
msgid "Replace also in file extensions" msgid "Replace also in file extensions"
msgstr "" msgstr "同時在檔案副檔名中替換"
#: tfrmmultirename.cbusesubs.caption #: tfrmmultirename.cbusesubs.caption
msgid "&Use substitution" msgid "&Use substitution"
@ -3867,11 +3868,11 @@ msgstr "檔案路徑"
#: tfrmmultirenamewait.caption #: tfrmmultirenamewait.caption
msgctxt "tfrmmultirenamewait.caption" msgctxt "tfrmmultirenamewait.caption"
msgid "Double Commander" msgid "Double Commander"
msgstr "Double Commander" msgstr ""
#: tfrmmultirenamewait.lblmessage.caption #: tfrmmultirenamewait.lblmessage.caption
msgid "Click OK when you have closed the editor to load the changed names!" msgid "Click OK when you have closed the editor to load the changed names!"
msgstr "" msgstr "關閉編輯器後,按一下“確定”以載入更改後的名稱!"
#: tfrmopenwith.caption #: tfrmopenwith.caption
msgid "Choose an application" msgid "Choose an application"
@ -7274,7 +7275,7 @@ msgstr "檔案名稱"
#: tfrmoptionspluginsdsx.lblplugindescription.caption #: tfrmoptionspluginsdsx.lblplugindescription.caption
msgctxt "tfrmoptionspluginsdsx.lblplugindescription.caption" msgctxt "tfrmoptionspluginsdsx.lblplugindescription.caption"
msgid "Searc&h plugins allow one to use alternative search algorithms or external tools (like \"locate\", etc.)" msgid "Searc&h plugins allow one to use alternative search algorithms or external tools (like \"locate\", etc.)"
msgstr "搜尋插件可允許使用其他替代搜尋算法或外部工具搜尋 (像 \"locate\" 等)" msgstr "搜尋插件可允許使用其他替代搜尋算法或外部工具搜尋 (像 \"locate\" 等)"
#: tfrmoptionspluginsdsx.stgplugins.columns[0].title.caption #: tfrmoptionspluginsdsx.stgplugins.columns[0].title.caption
msgctxt "tfrmoptionspluginsdsx.stgplugins.columns[0].title.caption" msgctxt "tfrmoptionspluginsdsx.stgplugins.columns[0].title.caption"
@ -9811,7 +9812,6 @@ msgid "Paint"
msgstr "繪圖" msgstr "繪圖"
#: tfrmviewer.btnpenwidth.caption #: tfrmviewer.btnpenwidth.caption
#, fuzzy
msgctxt "tfrmviewer.btnpenwidth.caption" msgctxt "tfrmviewer.btnpenwidth.caption"
msgid "1" msgid "1"
msgstr "1" msgstr "1"
@ -11048,11 +11048,13 @@ msgstr ""
msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)" msgid "By command name;By shortcut key (grouped);By shortcut key (one per row)"
msgstr "" msgstr ""
#: ulng.rsiclouddrivercopyseedfileconfirmdlgmessage #: ulng.rsiclouddrivecopyseedfileconfirmdlgmessage
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgmessage"
msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension." msgid "It is recommended to download the files first. Otherwise, what is copied is not the content of the files, but the corresponding placeholder files, which will result in hidden files with the .iCloud extension."
msgstr "建議先完成档案下載後再操作。否則,複製的不是档案本身的內容,而是對應的佔位符档案,這只會複製以.iCloud為擴展名的隱藏档案。" msgstr "建議先完成档案下載後再操作。否則,複製的不是档案本身的內容,而是對應的佔位符档案,這只會複製以.iCloud為擴展名的隱藏档案。"
#: ulng.rsiclouddrivercopyseedfileconfirmdlgtitle #: ulng.rsiclouddrivecopyseedfileconfirmdlgtitle
msgctxt "ulng.rsiclouddrivecopyseedfileconfirmdlgtitle"
msgid "The operation may contain files that were not downloaded, continue anyway?" msgid "The operation may contain files that were not downloaded, continue anyway?"
msgstr "操作可能包含未下載的档案,仍然繼續嗎?" msgstr "操作可能包含未下載的档案,仍然繼續嗎?"
@ -11090,6 +11092,20 @@ msgstr ""
msgid "Assign tags to %d items" msgid "Assign tags to %d items"
msgstr "將標籤分配給%d個項目" msgstr "將標籤分配給%d個項目"
#: ulng.rsmacosconnectserverprompt
msgid ""
"URL:\n"
"(eg. smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
msgstr ""
"URL:\n"
"(範例smb://server/share; https://dav.server.com; nfs://server/path)\n"
" "
#: ulng.rsmacosconnectservertitle
msgid "SMB / Samba / WebDAV / NFS ..."
msgstr ""
#: ulng.rsmarkminus #: ulng.rsmarkminus
msgid "Unselect mask" msgid "Unselect mask"
msgstr "取消選擇遮罩" msgstr "取消選擇遮罩"
@ -11205,6 +11221,26 @@ msgstr "在「訪達」中訪問文件"
msgid "Finder" msgid "Finder"
msgstr "訪達" msgstr "訪達"
#: ulng.rsmfstbigobackwardtips
msgctxt "ulng.rsmfstbigobackwardtips"
msgid "Backward"
msgstr "向後"
#: ulng.rsmfstbigobackwardtitle
msgctxt "ulng.rsmfstbigobackwardtitle"
msgid "Backward"
msgstr "向後"
#: ulng.rsmfstbigoforwardtips
msgctxt "ulng.rsmfstbigoforwardtips"
msgid "Forward"
msgstr "前進"
#: ulng.rsmfstbigoforwardtitle
msgctxt "ulng.rsmfstbigoforwardtitle"
msgid "Forward"
msgstr "前進"
#: ulng.rsmfstbigotips #: ulng.rsmfstbigotips
msgctxt "ulng.rsmfstbigotips" msgctxt "ulng.rsmfstbigotips"
msgid "Go" msgid "Go"
@ -11223,13 +11259,13 @@ msgstr "切換水平/垂直分隔顯示模式"
msgid "HorzSplit" msgid "HorzSplit"
msgstr "水平分隔" msgstr "水平分隔"
#: ulng.rsmfstbiiclouddrivertips #: ulng.rsmfstbiiclouddrivetips
msgctxt "ulng.rsmfstbiiclouddrivertips" msgctxt "ulng.rsmfstbiiclouddrivetips"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud雲碟" msgstr "iCloud雲碟"
#: ulng.rsmfstbiiclouddrivertitle #: ulng.rsmfstbiiclouddrivetitle
msgctxt "ulng.rsmfstbiiclouddrivertitle" msgctxt "ulng.rsmfstbiiclouddrivetitle"
msgid "iCloud Drive" msgid "iCloud Drive"
msgstr "iCloud雲碟" msgstr "iCloud雲碟"
@ -11379,11 +11415,13 @@ msgstr "退出"
msgid "Extract here..." msgid "Extract here..."
msgstr "解壓縮到此處..." msgstr "解壓縮到此處..."
#: ulng.rsmnuiclouddriverdownloadnow #: ulng.rsmnuiclouddrivedownloadnow
msgctxt "ulng.rsmnuiclouddrivedownloadnow"
msgid "Download Now" msgid "Download Now"
msgstr "現在下載" msgstr "現在下載"
#: ulng.rsmnuiclouddriverremovedownload #: ulng.rsmnuiclouddriveremovedownload
msgctxt "ulng.rsmnuiclouddriveremovedownload"
msgid "Remove Download" msgid "Remove Download"
msgstr "移除下載項" msgstr "移除下載項"
@ -12279,11 +12317,12 @@ msgid "Wipe directory %s"
msgstr "" msgstr ""
#: ulng.rsmsgmasterpassword #: ulng.rsmsgmasterpassword
msgid "Master Password" msgctxt "ulng.rsmsgmasterpassword"
msgid "Main Password"
msgstr "主要密碼" msgstr "主要密碼"
#: ulng.rsmsgmasterpasswordenter #: ulng.rsmsgmasterpasswordenter
msgid "Please enter the master password:" msgid "Please enter the main password:"
msgstr "請輸入主要密碼:" msgstr "請輸入主要密碼:"
#: ulng.rsmsgnewfile #: ulng.rsmsgnewfile
@ -14115,7 +14154,7 @@ msgstr ""
#: ulng.rssimplewordfilename #: ulng.rssimplewordfilename
msgctxt "ulng.rssimplewordfilename" msgctxt "ulng.rssimplewordfilename"
msgid "Filename" msgid "Filename"
msgstr "" msgstr "檔案名稱"
#: ulng.rssimplewordfiles #: ulng.rssimplewordfiles
msgid "files" msgid "files"

View file

@ -389,6 +389,7 @@ end;
function PackFilesW(PackedFile: PWideChar; SubPath: PWideChar; SrcPath: PWideChar; AddList: PWideChar; Flags: Integer): Integer;dcpcall; export; function PackFilesW(PackedFile: PWideChar; SubPath: PWideChar; SrcPath: PWideChar; AddList: PWideChar; Flags: Integer): Integer;dcpcall; export;
var var
Exists: Boolean;
FileExt: String; FileExt: String;
FilePath: String; FilePath: String;
Arc : TAbZipKitEx; Arc : TAbZipKitEx;
@ -412,6 +413,7 @@ begin
sPackedFile := UTF16ToUTF8(UnicodeString(PackedFile)); sPackedFile := UTF16ToUTF8(UnicodeString(PackedFile));
try try
Exists:= mbFileExists(sPackedFile);
FileExt:= LowerCase(ExtractFileExt(sPackedFile)); FileExt:= LowerCase(ExtractFileExt(sPackedFile));
if ((Flags and PK_PACK_ENCRYPT) <> 0) then if ((Flags and PK_PACK_ENCRYPT) <> 0) then
@ -490,6 +492,10 @@ begin
Result := Arc.FOperationResult; Result := Arc.FOperationResult;
FreeAndNil(Arc); FreeAndNil(Arc);
end; end;
if (Result = E_EABORTED) and (not Exists) then
begin
mbDeleteFile(sPackedFile);
end;
end; end;
function DeleteFilesW(PackedFile, DeleteList : PWideChar) : Integer;dcpcall; export; function DeleteFilesW(PackedFile, DeleteList : PWideChar) : Integer;dcpcall; export;

View file

@ -2294,7 +2294,7 @@ begin
FSuspiciousLinks.Add(NormalizePathDelimiters(CurItem.FileName)); FSuspiciousLinks.Add(NormalizePathDelimiters(CurItem.FileName));
end; end;
if not CreateSymLink(LinkTarget, UseName) then if not AbCreateSymLinkUnix(LinkTarget, UseName) then
raise EOSError.Create(mbSysErrorMessage(GetLastOSError)); raise EOSError.Create(mbSysErrorMessage(GetLastOSError));
end; end;
end; end;

View file

@ -1252,8 +1252,15 @@ begin
ZipArchive.SuspiciousLinks.Add(NormalizePathDelimiters(Item.FileName)); ZipArchive.SuspiciousLinks.Add(NormalizePathDelimiters(Item.FileName));
end; end;
if not CreateSymLink(LinkTarget, UseName, UInt32(Item.NativeFileAttributes)) then if (Item.HostOS = hosUnix) then
RaiseLastOSError; begin
if not AbCreateSymLinkUnix(LinkTarget, UseName) then
RaiseLastOSError;
end
else begin
if not CreateSymLink(LinkTarget, UseName, UInt32(Item.NativeFileAttributes)) then
RaiseLastOSError;
end;
except except
if ExceptObject is EAbUserAbort then if ExceptObject is EAbUserAbort then
ZipArchive.FStatus := asInvalid; ZipArchive.FStatus := asInvalid;

View file

@ -39,6 +39,7 @@ uses
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
Windows, Windows,
DCWindows, DCWindows,
DCNtfsLinks,
DCConvertEncoding, DCConvertEncoding,
{$ENDIF} {$ENDIF}
{$IFDEF LibcAPI} {$IFDEF LibcAPI}
@ -64,6 +65,7 @@ uses
DCClassesUtf8, DCClassesUtf8,
{$ENDIF} {$ENDIF}
DCBasicTypes, DCBasicTypes,
DCOSUtils,
DateUtils, DateUtils,
SysUtils, SysUtils,
Classes; Classes;
@ -209,6 +211,9 @@ type
because if you have a path x:\dir, and request x:\dir\sub1\sub2, because if you have a path x:\dir, and request x:\dir\sub1\sub2,
(/dir and /dir/sub1/sub2 on Unix) it fails.} (/dir and /dir/sub1/sub2 on Unix) it fails.}
function AbCreateSymLinkUnix(const Path, LinkName: string;
Attr: UInt32 = faInvalidAttributes): Boolean;
function AbCreateTempFile(const Dir : string) : string; function AbCreateTempFile(const Dir : string) : string;
function AbGetTempDirectory : string; function AbGetTempDirectory : string;
@ -377,7 +382,6 @@ uses
LazUTF8, LazUTF8,
AbConst, AbConst,
AbExcept, AbExcept,
DCOSUtils,
DCStrUtils, DCStrUtils,
DCDateTimeUtils; DCDateTimeUtils;
@ -487,6 +491,17 @@ begin
until ( Length( TempPath ) = Length( Path ) ); until ( Length( TempPath ) = Length( Path ) );
end; end;
{ -------------------------------------------------------------------------- } { -------------------------------------------------------------------------- }
function AbCreateSymLinkUnix(const Path, LinkName: string; Attr: UInt32): Boolean;
{$IF DEFINED(UNIX)}
begin
Result:= CreateSymLink(Path, LinkName, Attr);
end;
{$ELSE}
begin
Result:= CreateSymLinkUnix(Path, UTF16LongName(LinkName));
end;
{$ENDIF}
{ -------------------------------------------------------------------------- }
function AbCreateTempFile(const Dir : string) : string; function AbCreateTempFile(const Dir : string) : string;
begin begin
Result := AbGetTempFile(Dir, True); Result := AbGetTempFile(Dir, True);

View file

@ -54,7 +54,7 @@ msgid "Send keepalive during a transfer"
msgstr "Падтрымліваць злучэнне падчас перадачы" msgstr "Падтрымліваць злучэнне падчас перадачы"
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "Выкарыcтоўваць &галоўны пароль для абароны пароля" msgstr "Выкарыcтоўваць &галоўны пароль для абароны пароля"
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -163,3 +163,11 @@ msgstr "Проксі"
msgid "Properties" msgid "Properties"
msgstr "" msgstr ""
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr ""
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr ""

View file

@ -54,7 +54,7 @@ msgid "Send keepalive during a transfer"
msgstr "'Keepalive'-Pakete senden aktivieren" msgstr "'Keepalive'-Pakete senden aktivieren"
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "Master-Passwort zum Schutz des Passworts verwenden" msgstr "Master-Passwort zum Schutz des Passworts verwenden"
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -163,3 +163,11 @@ msgstr "Proxy"
msgid "Properties" msgid "Properties"
msgstr "Eigenschaften" msgstr "Eigenschaften"
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr ""
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr ""

View file

@ -53,7 +53,7 @@ msgid "Send keepalive during a transfer"
msgstr "Életjel küldése az átvitel alatt" msgstr "Életjel küldése az átvitel alatt"
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "Mesterjelszóval védett jelszó használata" msgstr "Mesterjelszóval védett jelszó használata"
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -162,3 +162,11 @@ msgstr "Proxy"
msgid "Properties" msgid "Properties"
msgstr "" msgstr ""
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr ""
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr ""

View file

@ -54,7 +54,7 @@ msgid "Send keepalive during a transfer"
msgstr "전송 중 킵얼라이브 전송" msgstr "전송 중 킵얼라이브 전송"
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "마스터 암호를 사용하여 암호 보호" msgstr "마스터 암호를 사용하여 암호 보호"
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -163,3 +163,11 @@ msgstr "프록시"
msgid "Properties" msgid "Properties"
msgstr "속성" msgstr "속성"
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr ""
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr ""

View file

@ -43,7 +43,7 @@ msgid "Send keepalive during a transfer"
msgstr "" msgstr ""
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "" msgstr ""
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -151,3 +151,12 @@ msgstr ""
#: tfrmfileproperties.caption #: tfrmfileproperties.caption
msgid "Properties" msgid "Properties"
msgstr "" msgstr ""
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr ""
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr ""

View file

@ -43,7 +43,7 @@ msgid "Send keepalive during a transfer"
msgstr "Поддерживать соединение во время передачи" msgstr "Поддерживать соединение во время передачи"
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "Использовать &главный пароль для защиты пароля" msgstr "Использовать &главный пароль для защиты пароля"
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -152,3 +152,11 @@ msgstr "Прокси"
msgid "Properties" msgid "Properties"
msgstr "Свойства" msgstr "Свойства"
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr "Добавить соединение"
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr "Быстрое подключение"

View file

@ -43,7 +43,7 @@ msgid "Send keepalive during a transfer"
msgstr "在传输期间发送 keepalive" msgstr "在传输期间发送 keepalive"
#: tdialogbox.chkmasterpassword.caption #: tdialogbox.chkmasterpassword.caption
msgid "Use master password to protect the password" msgid "Use main password to protect the password"
msgstr "使用主密码保护密码" msgstr "使用主密码保护密码"
#: tdialogbox.chkpassivemode.caption #: tdialogbox.chkpassivemode.caption
@ -152,3 +152,11 @@ msgstr "代理"
msgid "Properties" msgid "Properties"
msgstr "" msgstr ""
#: ftplng.rsaddconnection
msgid "Add connection"
msgstr ""
#: ftplng.rsquickconnection
msgid "Quick connection"
msgstr ""

View file

@ -254,7 +254,7 @@ object DialogBox: TDialogBox
Width = 306 Width = 306
BorderSpacing.Left = 12 BorderSpacing.Left = 12
BorderSpacing.Top = 12 BorderSpacing.Top = 12
Caption = 'Use master password to protect the password' Caption = 'Use main password to protect the password'
TabOrder = 7 TabOrder = 7
OnChange = CheckBoxChange OnChange = CheckBoxChange
end end

View file

@ -38,7 +38,7 @@ implementation
uses uses
LazUTF8, DynLibs, FtpUtils, blcksock, synaip, ssl_openssl_lib, libssh, LazUTF8, DynLibs, FtpUtils, blcksock, synaip, ssl_openssl_lib, libssh,
FtpProxy, TypInfo; FtpProxy, FtpLng, TypInfo;
var var
Protocol: PtrInt; Protocol: PtrInt;
@ -442,7 +442,6 @@ begin
end; end;
gConnection.Host:= ExtractConnectionHost(Text); gConnection.Host:= ExtractConnectionHost(Text);
gConnection.Port:= ExtractConnectionPort(Text); gConnection.Port:= ExtractConnectionPort(Text);
gConnection.FullSSL:= ExtractConnectionProt(Text) = 'ftps';
Data:= SendDlgMsg(pDlg, 'edtUserName', DM_GETTEXT, 0, 0); Data:= SendDlgMsg(pDlg, 'edtUserName', DM_GETTEXT, 0, 0);
Text:= PAnsiChar(Data); Text:= PAnsiChar(Data);
gConnection.UserName:= Text; gConnection.UserName:= Text;

View file

@ -37,6 +37,7 @@ exports
FsSetDefaultParams, FsSetDefaultParams,
FsStatusInfoW, FsStatusInfoW,
FsGetBackgroundFlags, FsGetBackgroundFlags,
FsExtractCustomIconW,
{ {
FsNetworkGetSupportedProtocols, FsNetworkGetSupportedProtocols,
FsNetworkGetConnection, FsNetworkGetConnection,

View file

@ -22,8 +22,8 @@
<VersionInfo> <VersionInfo>
<UseVersionInfo Value="True"/> <UseVersionInfo Value="True"/>
<MinorVersionNr Value="3"/> <MinorVersionNr Value="3"/>
<RevisionNr Value="5"/> <RevisionNr Value="6"/>
<StringTable FileDescription="FTP WFX plugin for Double Commander" LegalCopyright="Copyright (C) 2006-2024 Alexander Koblov"/> <StringTable FileDescription="FTP WFX plugin for Double Commander" LegalCopyright="Copyright (C) 2006-2026 Alexander Koblov"/>
</VersionInfo> </VersionInfo>
<BuildModes Count="2"> <BuildModes Count="2">
<Item1 Name="Release" Default="True"/> <Item1 Name="Release" Default="True"/>
@ -98,7 +98,7 @@ end;"/>
<PackageName Value="LazUtils"/> <PackageName Value="LazUtils"/>
</Item2> </Item2>
</RequiredPackages> </RequiredPackages>
<Units Count="6"> <Units Count="7">
<Unit0> <Unit0>
<Filename Value="ftp.dpr"/> <Filename Value="ftp.dpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
@ -130,6 +130,11 @@ end;"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="SftpSend"/> <UnitName Value="SftpSend"/>
</Unit5> </Unit5>
<Unit6>
<Filename Value="ftplng.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="FtpLng"/>
</Unit6>
</Units> </Units>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>

View file

@ -3,7 +3,7 @@
------------------------------------------------------------------------- -------------------------------------------------------------------------
Wfx plugin for working with File Transfer Protocol Wfx plugin for working with File Transfer Protocol
Copyright (C) 2009-2023 Alexander Koblov (alexx2000@mail.ru) Copyright (C) 2009-2026 Alexander Koblov (alexx2000@mail.ru)
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
@ -31,10 +31,6 @@ uses
SysUtils, Classes, SysUtils, Classes,
WfxPlugin, Extension; WfxPlugin, Extension;
const
cAddConnection = '<Add connection>';
cQuickConnection = '<Quick connection>';
type type
{ TConnection } { TConnection }
@ -96,6 +92,7 @@ procedure FsGetDefRootName(DefRootName: PAnsiChar; MaxLen: Integer); dcpcall; ex
procedure FsSetDefaultParams(dps: pFsDefaultParamStruct); dcpcall; export; procedure FsSetDefaultParams(dps: pFsDefaultParamStruct); dcpcall; export;
procedure FsStatusInfoW(RemoteDir: PWideChar; InfoStartEnd, InfoOperation: Integer); dcpcall; export; procedure FsStatusInfoW(RemoteDir: PWideChar; InfoStartEnd, InfoOperation: Integer); dcpcall; export;
function FsGetBackgroundFlags: Integer; dcpcall; export; function FsGetBackgroundFlags: Integer; dcpcall; export;
function FsExtractCustomIconW(RemoteName: PWideChar; ExtractFlags: Integer; TheIcon: PWfxIcon): Integer; dcpcall; export;
{ Network API } { Network API }
{ {
procedure FsNetworkGetSupportedProtocols(Protocols: PAnsiChar; MaxLen: LongInt); dcpcall; export; procedure FsNetworkGetSupportedProtocols(Protocols: PAnsiChar; MaxLen: LongInt); dcpcall; export;
@ -125,7 +122,7 @@ implementation
uses uses
IniFiles, StrUtils, FtpAdv, FtpUtils, FtpConfDlg, syncobjs, LazFileUtils, IniFiles, StrUtils, FtpAdv, FtpUtils, FtpConfDlg, syncobjs, LazFileUtils,
LazUTF8, DCClassesUtf8, DCConvertEncoding, SftpSend, ScpSend, FtpProxy, LazUTF8, DCClassesUtf8, DCConvertEncoding, SftpSend, ScpSend, FtpProxy,
FtpPropDlg, DCFileAttributes; FtpPropDlg, FtpLng, DCFileAttributes;
var var
DefaultIniName: String; DefaultIniName: String;
@ -139,7 +136,6 @@ threadvar
const const
FS_COPYFLAGS_FORCE = FS_COPYFLAGS_OVERWRITE or FS_COPYFLAGS_RESUME; FS_COPYFLAGS_FORCE = FS_COPYFLAGS_OVERWRITE or FS_COPYFLAGS_RESUME;
RootList: array [0 .. 1] of AnsiString = (cAddConnection, cQuickConnection);
type type
TListRec = record TListRec = record
@ -609,12 +605,15 @@ end;
function LocalFindNext(Hdl: THandle; var FindData: TWin32FindDataW): Boolean; function LocalFindNext(Hdl: THandle; var FindData: TWin32FindDataW): Boolean;
var var
ListRec: PListRec absolute Hdl;
I, RootCount: Integer; I, RootCount: Integer;
Connection: TConnection; Connection: TConnection;
ListRec: PListRec absolute Hdl;
RootList: array [0..1] of String;
begin begin
Result := False; Result := False;
I := ListRec^.Index; I := ListRec^.Index;
RootList[0]:= cAddConnection;
RootList[1]:= cQuickConnection;
RootCount := High(RootList) + 1; RootCount := High(RootList) + 1;
FillChar(FindData, SizeOf(FindData), 0); FillChar(FindData, SizeOf(FindData), 0);
if I < RootCount then if I < RootCount then
@ -1087,6 +1086,26 @@ begin
Result:= BG_DOWNLOAD or BG_UPLOAD or BG_ASK_USER; Result:= BG_DOWNLOAD or BG_UPLOAD or BG_ASK_USER;
end; end;
function FsExtractCustomIconW(RemoteName: PWideChar; ExtractFlags: Integer; TheIcon: PWfxIcon): Integer; dcpcall; export;
var
asRemoteName: String;
begin
Result:= FS_ICON_USEDEFAULT;
if (ExtractFileDir(RemoteName) = PathDelim) then
begin
if RemoteName[1] = '<' then
begin
Result:= FS_ICON_EXTRACTED;
TheIcon^.Format:= FS_ICON_FORMAT_FILE;
asRemoteName:= CeUtf16ToUtf8(RemoteName + 1);
if asRemoteName = cAddConnection then
StrPCopy(RemoteName, 'list-add')
else if asRemoteName = cQuickConnection then
StrPCopy(RemoteName, 'view-file');
end;
end;
end;
{ {
procedure FsNetworkGetSupportedProtocols(Protocols: PAnsiChar; MaxLen: LongInt); dcpcall; export; procedure FsNetworkGetSupportedProtocols(Protocols: PAnsiChar; MaxLen: LongInt); dcpcall; export;
begin begin
@ -1177,6 +1196,7 @@ procedure ExtensionInitialize(StartupInfo: PExtensionStartupInfo);
begin begin
gStartupInfo:= StartupInfo^; gStartupInfo:= StartupInfo^;
DefaultIniName:= gStartupInfo.PluginConfDir + DefaultIniName; DefaultIniName:= gStartupInfo.PluginConfDir + DefaultIniName;
TranslateResourceStrings;
try try
IniFile := TIniFileEx.Create(DefaultIniName, fmOpenReadWrite); IniFile := TIniFileEx.Create(DefaultIniName, fmOpenReadWrite);

View file

@ -0,0 +1,48 @@
unit FtpLng;
{$mode Delphi}
interface
uses
Classes, SysUtils;
var
cAddConnection: String;
cQuickConnection: String;
resourcestring
rsAddConnection = 'Add connection';
rsQuickConnection = 'Quick connection';
procedure TranslateResourceStrings;
implementation
uses
FtpFunc;
function Translate(Name, Value: AnsiString; Hash: LongInt; Arg: Pointer): AnsiString;
var
ALen: Integer;
begin
with gStartupInfo do
begin
SetLength(Result, MaxSmallint);
ALen:= TranslateString(Translation, PAnsiChar(Name), PAnsiChar(Value), PAnsiChar(Result), MaxSmallint);
SetLength(Result, ALen);
end;
end;
procedure TranslateResourceStrings;
begin
if Assigned(gStartupInfo.Translation) then
begin
SetResourceStrings(@Translate, nil);
end;
cAddConnection:= '<' + rsAddConnection + '>';
cQuickConnection:= '<' + rsQuickConnection + '>';
end;
end.

View file

@ -141,7 +141,8 @@ typedef struct {
tSetProperty SetProperty; tSetProperty SetProperty;
tGetProperty GetProperty; tGetProperty GetProperty;
tCreateComponent CreateComponent; tCreateComponent CreateComponent;
unsigned char Reserved[4088 * sizeof(void *)]; char LanguageID[16];
unsigned char Reserved[4086 * sizeof(void *)];
} tExtensionStartupInfo; } tExtensionStartupInfo;
#pragma pack(pop) #pragma pack(pop)

View file

@ -102,6 +102,20 @@
#define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400 #define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400
#define FILE_ATTRIBUTE_UNIX_MODE 0x80000000 #define FILE_ATTRIBUTE_UNIX_MODE 0x80000000
// custom icons
#define FS_ICON_FORMAT_HICON 0 // Load icon from HICON (Windows only)
#define FS_ICON_FORMAT_FILE 1 // Load icon from file name returned by plugin in the RemoteName
#define FS_ICON_FORMAT_BINARY 2 // Load icon from Data byte array (PNG or ICO), destroy data using Free if FS_ICON_EXTRACTED_DESTROY returned
typedef void (DCPCALL *tFreeProc)(void* Pointer);
typedef struct {
void* Pointer;
uintptr_t Size;
uintptr_t Format;
tFreeProc Free;
} TWfxIcon,*PWfxIcon;
typedef struct { typedef struct {
DWORD SizeLow,SizeHigh; DWORD SizeLow,SizeHigh;
FILETIME LastWriteTime; FILETIME LastWriteTime;
@ -176,8 +190,8 @@ BOOL DCPCALL FsSetTimeW(WCHAR* RemoteName,FILETIME *CreationTime,
void DCPCALL FsStatusInfo(char* RemoteDir,int InfoStartEnd,int InfoOperation); void DCPCALL FsStatusInfo(char* RemoteDir,int InfoStartEnd,int InfoOperation);
void DCPCALL FsStatusInfoW(WCHAR* RemoteDir,int InfoStartEnd,int InfoOperation); void DCPCALL FsStatusInfoW(WCHAR* RemoteDir,int InfoStartEnd,int InfoOperation);
void DCPCALL FsGetDefRootName(char* DefRootName,int maxlen); void DCPCALL FsGetDefRootName(char* DefRootName,int maxlen);
int DCPCALL FsExtractCustomIcon(char* RemoteName,int ExtractFlags,HICON* TheIcon); int DCPCALL FsExtractCustomIcon(char* RemoteName,int ExtractFlags,PWfxIcon TheIcon);
int DCPCALL FsExtractCustomIconW(WCHAR* RemoteName,int ExtractFlags,HICON* TheIcon); int DCPCALL FsExtractCustomIconW(WCHAR* RemoteName,int ExtractFlags,PWfxIcon TheIcon);
void DCPCALL FsSetDefaultParams(FsDefaultParamStruct* dps); void DCPCALL FsSetDefaultParams(FsDefaultParamStruct* dps);
int DCPCALL FsGetPreviewBitmap(char* RemoteName,int width,int height,HBITMAP* ReturnedBitmap); int DCPCALL FsGetPreviewBitmap(char* RemoteName,int width,int height,HBITMAP* ReturnedBitmap);

View file

@ -3,7 +3,7 @@
------------------------------------------------------------------------- -------------------------------------------------------------------------
Help manager Help manager
Copyright (C) 2008-2021 Alexander Koblov (alexx2000@mail.ru) Copyright (C) 2008-2026 Alexander Koblov (alexx2000@mail.ru)
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -101,20 +101,35 @@ var
{$ENDIF} {$ENDIF}
var var
ATranslations: TStringList; ATranslations: TStringList;
function CheckHelp(const HelpLang: String): Boolean;
begin
Result:= mbDirectoryExists(gpExePath + 'doc' + PathDelim + HelpLang);
if not Result then Result:= ATranslations.IndexOf(HelpLang) >= 0;
end;
begin begin
if NumCountChars('.', gPOFileName) < 2 then if NumCountChars('.', gPOFileName) < 2 then
gHelpLang:= 'en' gHelpLang:= 'en'
else begin else begin
gHelpLang:= ExtractDelimited(2, gPOFileName, ['.']); ATranslations:= TStringListEx.Create;
if not mbDirectoryExists(gpExePath + 'doc' + PathDelim + gHelpLang) then try
begin gHelpLang:= ExtractDelimited(2, gPOFileName, ['.']);
ATranslations:= TStringListEx.Create;
try try
ATranslations.LoadFromFile(gpExePath + 'doublecmd.help'); ATranslations.LoadFromFile(gpExePath + 'doublecmd.help');
if ATranslations.IndexOf(gHelpLang) < 0 then gHelpLang:= 'en';
except except
gHelpLang:= 'en'; // Ignore
end; end;
if not CheckHelp(gHelpLang) then
begin
if Pos('_', gHelpLang) = 0 then
gHelpLang:= 'en'
else begin
gHelpLang:= ExtractDelimited(1, gHelpLang, ['_']);
if not CheckHelp(gHelpLang) then gHelpLang:= 'en';
end;
end;
finally
ATranslations.Free; ATranslations.Free;
end; end;
end; end;
@ -129,7 +144,7 @@ begin
{$IFDEF MSWindows} {$IFDEF MSWindows}
// Lazarus issue #0021637. // Lazarus issue #0021637.
if FindDefaultBrowser(ABrowser, AParams) then if FindDefaultBrowser(ABrowser, AParams) and (Pos('"%s"', AParams) = 0) then
begin begin
HTMLBrowserHelpViewer.BrowserPath := ABrowser; HTMLBrowserHelpViewer.BrowserPath := ABrowser;
HTMLBrowserHelpViewer.BrowserParams := StringReplace(AParams, '%s', '"%s"', [rfReplaceAll]); HTMLBrowserHelpViewer.BrowserParams := StringReplace(AParams, '%s', '"%s"', [rfReplaceAll]);

View file

@ -35,8 +35,9 @@
<UseVersionInfo Value="True"/> <UseVersionInfo Value="True"/>
<MajorVersionNr Value="1"/> <MajorVersionNr Value="1"/>
<MinorVersionNr Value="2"/> <MinorVersionNr Value="2"/>
<Attributes pvaPreRelease="True" pvaPrivateBuild="True"/> <RevisionNr Value="2"/>
<StringTable FileDescription="Double Commander" InternalName="DOUBLECMD" LegalCopyright="Copyright (C) 2006-2025 Alexander Koblov" ProductName="Double Commander"/> <Attributes pvaPreRelease="True" pvaPrivateBuild="False"/>
<StringTable FileDescription="Double Commander" InternalName="DOUBLECMD" LegalCopyright="Copyright (C) 2006-2026 Alexander Koblov" ProductName="Double Commander"/>
</VersionInfo> </VersionInfo>
<BuildModes Count="5"> <BuildModes Count="5">
<Item1 Name="Debug" Default="True"/> <Item1 Name="Debug" Default="True"/>
@ -332,7 +333,7 @@ end;"/>
<PackageName Value="Image32"/> <PackageName Value="Image32"/>
</Item13> </Item13>
</RequiredPackages> </RequiredPackages>
<Units Count="291"> <Units Count="300">
<Unit0> <Unit0>
<Filename Value="doublecmd.lpr"/> <Filename Value="doublecmd.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
@ -2053,9 +2054,9 @@ end;"/>
<UnitName Value="uMountedListOperation"/> <UnitName Value="uMountedListOperation"/>
</Unit278> </Unit278>
<Unit279> <Unit279>
<Filename Value="platform\unix\darwin\uiclouddriver.pas"/> <Filename Value="platform\unix\darwin\uiclouddrive.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="uiCloudDriver"/> <UnitName Value="uiCloudDrive"/>
</Unit279> </Unit279>
<Unit280> <Unit280>
<Filename Value="filesources\ufilesourcemanager.pas"/> <Filename Value="filesources\ufilesourcemanager.pas"/>
@ -2078,9 +2079,9 @@ end;"/>
<UnitName Value="uDarwinUtil"/> <UnitName Value="uDarwinUtil"/>
</Unit283> </Unit283>
<Unit284> <Unit284>
<Filename Value="platform\unix\darwin\uiclouddriverconfig.pas"/> <Filename Value="platform\unix\darwin\uiclouddriveconfig.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="uiCloudDriverConfig"/> <UnitName Value="uiCloudDriveConfig"/>
</Unit284> </Unit284>
<Unit285> <Unit285>
<Filename Value="platform\unix\darwin\udarwinfileview.pas"/> <Filename Value="platform\unix\darwin\udarwinfileview.pas"/>
@ -2096,10 +2097,10 @@ end;"/>
<UnitName Value="fOptionsiCloud"/> <UnitName Value="fOptionsiCloud"/>
</Unit286> </Unit286>
<Unit287> <Unit287>
<Filename Value="platform\unix\darwin\uiclouddriverutil.pas"/> <Filename Value="platform\unix\darwin\uiclouddriveutil.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<HasResources Value="True"/> <HasResources Value="True"/>
<UnitName Value="uiCloudDriverUtil"/> <UnitName Value="uiCloudDriveUtil"/>
</Unit287> </Unit287>
<Unit288> <Unit288>
<Filename Value="fileviews\usmoothscrollinggrid.pas"/> <Filename Value="fileviews\usmoothscrollinggrid.pas"/>
@ -2119,6 +2120,51 @@ end;"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="fMasterKey"/> <UnitName Value="fMasterKey"/>
</Unit290> </Unit290>
<Unit291>
<Filename Value="platform\unix\darwin\udarwinapplication.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinApplication"/>
</Unit291>
<Unit292>
<Filename Value="platform\unix\darwin\udarwinfile.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinFile"/>
</Unit292>
<Unit293>
<Filename Value="platform\unix\darwin\udarwinimage.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinImage"/>
</Unit293>
<Unit294>
<Filename Value="platform\unix\darwin\udarwinsimplefswatch.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinSimpleFSWatch"/>
</Unit294>
<Unit295>
<Filename Value="platform\unix\darwin\udarwinpanel.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinPanel"/>
</Unit295>
<Unit296>
<Filename Value="platform\unix\darwin\udarwindc.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinDC"/>
</Unit296>
<Unit297>
<Filename Value="fileviews\ufileviewbasegrid.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uFileViewBaseGrid"/>
</Unit297>
<Unit298>
<Filename Value="platform\unix\darwin\udarwinclipboard.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinClipboard"/>
</Unit298>
<Unit299>
<Filename Value="platform\unix\darwin\udarwinfileproperty.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uDarwinFileProperty"/>
</Unit299>
</Units> </Units>
</ProjectOptions> </ProjectOptions>
<CompilerOptions> <CompilerOptions>

View file

@ -51,9 +51,8 @@ uses
uGtk2FixCursorPos, uGtk2FixCursorPos,
{$ENDIF} {$ENDIF}
{$IFDEF darwin} {$IFDEF darwin}
uAppleMagnifiedModeFix, uDarwinApplication,
uMyDarwin, uiCloudDriveConfig,
uiCloudDriverConfig,
{$ENDIF} {$ENDIF}
{$IFDEF LCLWIN32} {$IFDEF LCLWIN32}
uDClass, uDClass,
@ -162,8 +161,8 @@ begin
{$ENDIF} {$ENDIF}
{$IF DEFINED(darwin)} {$IF DEFINED(darwin)}
FixMacFormatSettings; TDarwinApplicationUtil.fixFormatSettings;
setMacOSAppearance( gAppMode ); TDarwinApplicationUtil.setTheme( gAppMode );
{$ENDIF} {$ENDIF}
// Use only current directory separator // Use only current directory separator
@ -218,7 +217,7 @@ begin
LoadPixMapManager; LoadPixMapManager;
{$IF DEFINED(DARWIN)} {$IF DEFINED(DARWIN)}
initCocoaModernFormConfig; initCocoaModernFormConfig;
iCloudDriverConfigUtil.load; iCloudDriveConfigUtil.load;
{$ENDIF} {$ENDIF}
Application.CreateForm(TfrmMain, frmMain); // main form Application.CreateForm(TfrmMain, frmMain); // main form
Application.CreateForm(TdmComData, dmComData); // common data Application.CreateForm(TdmComData, dmComData); // common data

View file

@ -400,12 +400,14 @@ implementation
uses uses
LCLProc, LCLType, LConvEncoding, StrUtils, HelpIntfs, fViewer, fMain, LCLProc, LCLType, LConvEncoding, StrUtils, HelpIntfs, fViewer, fMain,
uLng, uGlobs, uShowForm, uDCUtils, uFileSourceUtil, uOfficeXML, uLng, uGlobs, uShowForm, uDCUtils, uOfficeXML,
uSearchResultFileSource, uFile, uFileProperty, uColumnsFileView, uFile, uFileProperty, uColumnsFileView,
uFileViewNotebook, uKeyboard, uOSUtils, uArchiveFileSourceUtil, uFileViewNotebook, uKeyboard, uOSUtils,
DCOSUtils, uRegExprA, uRegExprW, uDebug, uShowMsg, uConvEncoding, DCOSUtils, uRegExprA, uRegExprW, uDebug, uShowMsg, uConvEncoding,
uColumns, uFileFunctions, uFileSorting, uWcxArchiveFileSource, uColumns, uFileFunctions, uFileSorting,
DCConvertEncoding, WcxPlugin, fChooseEncoding, dmCommonData DCConvertEncoding, WcxPlugin, fChooseEncoding, dmCommonData,
uLocalFileSource, uWcxArchiveFileSource, uSearchResultFileSource,
uFileSourceUtil, uArchiveFileSourceUtil
{$IFDEF DARKWIN} {$IFDEF DARKWIN}
, uDarkStyle , uDarkStyle
{$ENDIF} {$ENDIF}
@ -525,7 +527,7 @@ begin
LoadPlugins; LoadPlugins;
ClearFilter; ClearFilter;
// SetWindowCaption(wcs_NewSearch); // SetWindowCaption(wcs_NewSearch);
cmbFindPathStart.Text := FileView.CurrentPath; cmbFindPathStart.Text := FileView.CurrentRealPath;
// Get paths of selected files, if any. // Get paths of selected files, if any.
FSelectedFiles.Clear; FSelectedFiles.Clear;
@ -541,6 +543,9 @@ begin
FreeAndNil(ASelectedFiles); FreeAndNil(ASelectedFiles);
end; end;
(FileView.FileSource as ILocalFileSource).AddSearchPath(
FileView.CurrentRealPath, FSelectedFiles );
FindInArchive(FileView); FindInArchive(FileView);
if Length(TemplateName) > 0 then if Length(TemplateName) > 0 then

View file

@ -10,6 +10,7 @@ object frmCheckSumVerify: TfrmCheckSumVerify
Constraints.MinWidth = 300 Constraints.MinWidth = 300
KeyPreview = True KeyPreview = True
OnClose = FormClose OnClose = FormClose
OnCreate = FormCreate
OnKeyDown = FormKeyDown OnKeyDown = FormKeyDown
Position = poScreenCenter Position = poScreenCenter
ShowInTaskBar = stAlways ShowInTaskBar = stAlways
@ -37,6 +38,7 @@ object frmCheckSumVerify: TfrmCheckSumVerify
Gutter.Visible = False Gutter.Visible = False
Gutter.Width = 0 Gutter.Width = 0
Gutter.MouseActions = <> Gutter.MouseActions = <>
RightGutter.Visible = False
RightGutter.Width = 0 RightGutter.Width = 0
RightGutter.MouseActions = <> RightGutter.MouseActions = <>
Keystrokes = < Keystrokes = <
@ -343,6 +345,7 @@ object frmCheckSumVerify: TfrmCheckSumVerify
MouseActions = <> MouseActions = <>
MouseTextActions = <> MouseTextActions = <>
MouseSelActions = <> MouseSelActions = <>
Options = [eoBracketHighlight, eoHideRightMargin, eoTabsToSpaces, eoTrimTrailingSpaces]
VisibleSpecialChars = [vscSpace, vscTabAtLast] VisibleSpecialChars = [vscSpace, vscTabAtLast]
ReadOnly = True ReadOnly = True
ScrollBars = ssAutoBoth ScrollBars = ssAutoBoth

View file

@ -3,7 +3,7 @@
------------------------------------------------------------------------- -------------------------------------------------------------------------
Verify checksum dialog Verify checksum dialog
Copyright (C) 2009-2022 Alexander Koblov (alexx2000@mail.ru) Copyright (C) 2009-2026 Alexander Koblov (alexx2000@mail.ru)
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU General Public License as published by
@ -26,7 +26,7 @@ unit fCheckSumVerify;
interface interface
uses uses
Classes, SysUtils, Forms, Buttons, SynEdit, LMessages, uOSForms, LCLType, Classes, SysUtils, Forms, Buttons, SynEdit, LMessages, uOSForms,
Graphics, uFileSourceCalcChecksumOperation, DCBasicTypes, Controls; Graphics, uFileSourceCalcChecksumOperation, DCBasicTypes, Controls;
type type
@ -105,11 +105,16 @@ end;
procedure TfrmCheckSumVerify.FormCreate(Sender: TObject); procedure TfrmCheckSumVerify.FormCreate(Sender: TObject);
begin begin
seCheckSumVerify.FixDefaultKeystrokes; seCheckSumVerify.FixDefaultKeystrokes;
FontOptionsToFont(gFonts[dcfLog], seCheckSumVerify.Font);
end; end;
procedure TfrmCheckSumVerify.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure TfrmCheckSumVerify.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin begin
if Key = 27 then Close; if Key in [VK_RETURN, VK_ESCAPE] then
begin
Key:= 0;
Close;
end;
end; end;
procedure TfrmCheckSumVerify.seCheckSumVerifySpecialLineColors(Sender: TObject; Line: integer; procedure TfrmCheckSumVerify.seCheckSumVerifySpecialLineColors(Sender: TObject; Line: integer;

View file

@ -332,7 +332,6 @@ object frmDiffer: TfrmDiffer
SimplePanel = False SimplePanel = False
end end
object MainMenu: TMainMenu object MainMenu: TMainMenu
Images = dmComData.ilEditorImages
Left = 88 Left = 88
Top = 136 Top = 136
object mnuFile: TMenuItem object mnuFile: TMenuItem

View file

@ -740,6 +740,9 @@ end;
procedure TfrmDiffer.FormCreate(Sender: TObject); procedure TfrmDiffer.FormCreate(Sender: TObject);
begin begin
if gIconsInMenus then
Menu.Images:= dmComData.ilEditorImages;
ScrollLock:= 0; ScrollLock:= 0;
Diff:= TDiff.Create(Self); Diff:= TDiff.Create(Self);
SynDiffEditLeft:= TSynDiffEdit.Create(Self); SynDiffEditLeft:= TSynDiffEdit.Create(Self);

View file

@ -761,7 +761,6 @@ object frmEditor: TfrmEditor
end end
end end
object MainMenu1: TMainMenu object MainMenu1: TMainMenu
Images = dmComData.ilEditorImages
Left = 48 Left = 48
Top = 32 Top = 32
object miFile: TMenuItem object miFile: TMenuItem

View file

@ -286,7 +286,8 @@ var
begin begin
InitPropStorage(Self); InitPropStorage(Self);
Menu.Images:= dmComData.ilEditorImages; if gIconsInMenus then
Menu.Images:= dmComData.ilEditorImages;
StatusBar.OnShowHint:= @StatusBarShowHint; StatusBar.OnShowHint:= @StatusBarShowHint;
LoadGlobalOptions; LoadGlobalOptions;

View file

@ -148,7 +148,7 @@ uses
{$IFDEF UNIX} {$IFDEF UNIX}
BaseUnix, uUsersGroups, LazUTF8, DCUnix, uMyUnix, BaseUnix, uUsersGroups, LazUTF8, DCUnix, uMyUnix,
{$IFDEF DARWIN} {$IFDEF DARWIN}
uMyDarwin, uDarwinFile, uDarwinFileProperty,
{$ENDIF} {$ENDIF}
{$IFDEF LINUX} {$IFDEF LINUX}
statx, statx,
@ -257,6 +257,16 @@ end;
{$ELSEIF DEFINED(UNIX)} {$ELSEIF DEFINED(UNIX)}
{$IFDEF DARWIN}
function PropertyLazyLoader(const path: String; const propertyType: TFilePropertyType): TFileProperty;
begin
if propertyType = fpMacOSSpecific then
Result := TDarwinFilePropertyUtil.getSpecificProperty(path)
else
Result := nil;
end;
{$ENDIF}
procedure FillFromStat( procedure FillFromStat(
AFile: TFile; AFile: TFile;
AFilePath: String; AFilePath: String;
@ -370,6 +380,9 @@ end;
class function TFileSystemFileSource.CreateFile(const APath: String): TFile; class function TFileSystemFileSource.CreateFile(const APath: String): TFile;
begin begin
Result := TFile.Create(APath); Result := TFile.Create(APath);
{$IF DEFINED(DARWIN)}
Result.SetPropertyLazyLoader(@PropertyLazyLoader);
{$ENDIF}
with Result do with Result do
begin begin
@ -391,6 +404,9 @@ var
LinkAttrs: TFileAttrs; LinkAttrs: TFileAttrs;
begin begin
Result := TFile.Create(APath); Result := TFile.Create(APath);
{$IF DEFINED(DARWIN)}
Result.SetPropertyLazyLoader(@PropertyLazyLoader);
{$ENDIF}
with Result do with Result do
begin begin
@ -429,10 +445,6 @@ begin
end; end;
{$ENDIF} {$ENDIF}
end; end;
{$IFDEF DARWIN}
if pSearchRecord^.Name<>'..' then
MacOSSpecificProperty := uMyDarwin.getMacOSSpecificFileProperty(AFilePath);
{$ENDIF}
end; end;
// Set name after assigning Attributes property, because it is used to get extension. // Set name after assigning Attributes property, because it is used to get extension.
@ -470,6 +482,9 @@ begin
raise EFileNotFound.Create(aFilePath); raise EFileNotFound.Create(aFilePath);
Result := TFile.Create(ExtractFilePath(aFilePath)); Result := TFile.Create(ExtractFilePath(aFilePath));
{$IF DEFINED(DARWIN)}
Result.SetPropertyLazyLoader(@PropertyLazyLoader);
{$ENDIF}
FillFromStat(Result, aFilePath, @StatInfo); FillFromStat(Result, aFilePath, @StatInfo);
{$ELSE} {$ELSE}
@ -488,10 +503,6 @@ begin
{$ENDIF} {$ENDIF}
{$IFDEF DARWIN}
Result.MacOSSpecificProperty := uMyDarwin.getMacOSSpecificFileProperty(AFilePath);
{$ENDIF}
// Set name after assigning Attributes property, because it is used to get extension. // Set name after assigning Attributes property, because it is used to get extension.
Result.FullPath := aFilePath; Result.FullPath := aFilePath;
end; end;
@ -549,6 +560,10 @@ var
SearchRec: TSearchRecEx; SearchRec: TSearchRecEx;
{$ENDIF} {$ENDIF}
begin begin
{$IF DEFINED(DARWIN)}
Afile.SetPropertyLazyLoader(@PropertyLazyLoader);
{$ENDIF}
AProps := AFile.AssignedProperties; AProps := AFile.AssignedProperties;
// Omit properties that are already assigned. // Omit properties that are already assigned.
@ -710,7 +725,7 @@ begin
begin begin
TypeProperty := TFileTypeProperty.Create; TypeProperty := TFileTypeProperty.Create;
{$IF DEFINED(DARWIN)} {$IF DEFINED(DARWIN)}
TypeProperty.Value:= GetFileDescription(sFullPath); TypeProperty.Value:= TDarwinFileUtil.getDescription(sFullPath);
{$ELSE} {$ELSE}
TypeProperty.Value:= GetFileMimeType(sFullPath); TypeProperty.Value:= GetFileMimeType(sFullPath);
{$ENDIF} {$ENDIF}
@ -762,11 +777,6 @@ begin
CommentProperty.Value := FDescr.ReadDescription(sFullPath); CommentProperty.Value := FDescr.ReadDescription(sFullPath);
end; end;
{$IFDEF DARWIN}
if (AFile.Name<>'..') and (fpMacOSSpecific in PropertiesToSet) then
MacOSSpecificProperty := uMyDarwin.getMacOSSpecificFileProperty(sFullPath);
{$ENDIF}
PropertiesToSet:= PropertiesToSet * fpVariantAll; PropertiesToSet:= PropertiesToSet * fpVariantAll;
for AProp in PropertiesToSet do for AProp in PropertiesToSet do
begin begin

View file

@ -90,7 +90,9 @@ type
FAutoRenameItSelf: Boolean; FAutoRenameItSelf: Boolean;
FCorrectSymLinks: Boolean; FCorrectSymLinks: Boolean;
FCopyAttributesOptions: TCopyAttributesOptions; FCopyAttributesOptions: TCopyAttributesOptions;
{$IF DEFINED(MSWINDOWS)}
FMaxPathOption: TFileSourceOperationUIResponse; FMaxPathOption: TFileSourceOperationUIResponse;
{$ENDIF}
FCopyOnWrite: TFileSourceOperationOptionGeneral; FCopyOnWrite: TFileSourceOperationOptionGeneral;
FDeleteFileOption: TFileSourceOperationUIResponse; FDeleteFileOption: TFileSourceOperationUIResponse;
FFileExistsOption: TFileSourceOperationOptionFileExists; FFileExistsOption: TFileSourceOperationOptionFileExists;
@ -188,6 +190,9 @@ uses
{$ENDIF} {$ENDIF}
{$IFDEF DARWIN} {$IFDEF DARWIN}
, DCDarwin , DCDarwin
{$ENDIF}
{$IFDEF MSWINDOWS}
, LCLStrConsts
{$ENDIF} {$ENDIF}
; ;
@ -1203,14 +1208,14 @@ begin
end; end;
end; end;
end; end;
{$IF DEFINED(MSWINDOWS)}
// Check MAX_PATH // Check MAX_PATH
if gLongNameAlert and (UTF8Length(TargetName) > MAX_PATH - 1) then if gLongNameAlert and (UTF8Length(TargetName) > MAX_PATH - 1) then
begin begin
if FMaxPathOption <> fsourInvalid then if FMaxPathOption <> fsourInvalid then
AskResult := FMaxPathOption AskResult := FMaxPathOption
else begin else begin
AskResult := AskQuestion(Format(rsMsgFilePathOverMaxPath, AskResult := AskQuestion(rsMtWarning + LineEnding + LineEnding + Format(rsMsgFilePathOverMaxPath,
[UTF8Length(TargetName), MAX_PATH - 1, LineEnding + WrapTextSimple(TargetName, 100) + LineEnding]), '', [UTF8Length(TargetName), MAX_PATH - 1, LineEnding + WrapTextSimple(TargetName, 100) + LineEnding]), '',
[fsourIgnore, fsourSkip, fsourAbort, fsourIgnoreAll, fsourSkipAll], fsourIgnore, fsourSkip); [fsourIgnore, fsourSkip, fsourAbort, fsourIgnoreAll, fsourSkipAll], fsourIgnore, fsourSkip);
if AskResult = fsourSkipAll then FMaxPathOption := fsourSkip; if AskResult = fsourSkipAll then FMaxPathOption := fsourSkip;
@ -1230,7 +1235,7 @@ begin
fsourIgnoreAll: FMaxPathOption := fsourIgnore; fsourIgnoreAll: FMaxPathOption := fsourIgnore;
end; end;
end; end;
{$ENDIF}
if aFile.IsLink then if aFile.IsLink then
ProcessedOk := ProcessLink(CurrentSubNode, TargetName) ProcessedOk := ProcessLink(CurrentSubNode, TargetName)
else if aFile.IsDirectory then else if aFile.IsDirectory then

View file

@ -15,7 +15,7 @@ uses
type type
{ IMountedFileSource } { IMountedFileSource }
IMountedFileSource = interface(IFileSource) IMountedFileSource = interface(IFileSystemFileSource)
['{47A3B4E6-5C40-A86A-E325-E4ABDC069B42}'] ['{47A3B4E6-5C40-A86A-E325-E4ABDC069B42}']
procedure mount( const path: String; const mountPoint: String ); procedure mount( const path: String; const mountPoint: String );

View file

@ -8,7 +8,7 @@ uses
Classes, SysUtils, Classes, SysUtils,
uFileSourceListOperation, uFileSourceListOperation,
uFileSource, uMountedFileSource, uFileSystemListOperation, uFileSource, uMountedFileSource, uFileSystemListOperation,
uDCUtils, DCOSUtils, DCStrUtils; DCOSUtils, DCStrUtils;
type type

View file

@ -56,6 +56,7 @@ type
col: Integer; col: Integer;
row: Integer; row: Integer;
drawingRect: TRect; drawingRect: TRect;
decorationRect: TRect;
case Byte of case Byte of
0: ( 0: (
@ -71,7 +72,7 @@ type
TFileSourceUIHandler = class TFileSourceUIHandler = class
procedure draw( var params: TFileSourceUIParams ); virtual; abstract; procedure draw( var params: TFileSourceUIParams ); virtual; abstract;
function click( var params: TFileSourceUIParams ): Boolean; virtual; abstract; function click( var params: TFileSourceUIParams ): Boolean; virtual; abstract;
end; end;
TFileSourceField = record TFileSourceField = record

View file

@ -59,7 +59,7 @@ type
fspListFlatView, fspListFlatView,
{en {en
Set, if the file source supports mounted/mixed file struct. Set, if the file source supports mounted/mixed file struct.
eg. TMountedFileSource / TiCloudDriverFileSource eg. TMountedFileSource / TiCloudDriveFileSource
} }
fspMounted, fspMounted,
{en {en

View file

@ -30,6 +30,8 @@ function ChooseFileSource(aFileView: TFileView; const aPath: String; bLocal: Boo
function ChooseArchive(aFileView: TFileView; aFileSource: IFileSource; aFile: TFile; bForce: Boolean = False): Boolean; function ChooseArchive(aFileView: TFileView; aFileSource: IFileSource; aFile: TFile; bForce: Boolean = False): Boolean;
function ChooseSpecialFile(aFile: TFile): Boolean;
procedure ChooseSymbolicLink(aFileView: TFileView; aFile: TFile); procedure ChooseSymbolicLink(aFileView: TFileView; aFile: TFile);
procedure SetFileSystemPath(aFileView: TFileView; aPath: String); procedure SetFileSystemPath(aFileView: TFileView; aPath: String);
@ -58,7 +60,11 @@ uses
uArchiveFileSourceUtil, uArchiveFileSourceUtil,
uFileSourceOperationMessageBoxesUI, uFileSourceOperationMessageBoxesUI,
uFileProperty, URIParser, uFileProperty, URIParser,
WcxPlugin, uWcxModule, uHash, uSuperUser; WcxPlugin, uWcxModule, uHash, uSuperUser
{$IFDEF DARWIN}
, uDarwinFinderModel, uDarwinFileView
{$ENDIF}
;
procedure ChooseFile(aFileView: TFileView; aFileSource: IFileSource; procedure ChooseFile(aFileView: TFileView; aFileSource: IFileSource;
aFile: TFile); aFile: TFile);
@ -174,6 +180,9 @@ begin
if ChooseArchive(aFileView, aFileSource, aFile) then if ChooseArchive(aFileView, aFileSource, aFile) then
Exit(True); Exit(True);
if ChooseSpecialFile(aFile) then
Exit(True);
// Work only for TVfsFileSource. // Work only for TVfsFileSource.
if aFileView.FileSource.IsClass(TVfsFileSource) then if aFileView.FileSource.IsClass(TVfsFileSource) then
begin begin
@ -308,6 +317,20 @@ begin
Result := False; Result := False;
end; end;
// todo:
// currently, there's only one special use case, which is simply hardcoded.
// if the number increases, it will be refactored into a registration-based model.
function ChooseSpecialFile(aFile: TFile): Boolean;
begin
Result:= False;
{$IFDEF DARWIN}
if aFile.Extension = 'savedSearch' then begin
TDarwinFinderModelUtil.searchFilesBySavedSearch( aFile.FullPath, @darwinSearchResultHandler.onSearchFinderTagComplete );
Result:= True;
end;
{$ENDIF}
end;
procedure ChooseSymbolicLink(aFileView: TFileView; aFile: TFile); procedure ChooseSymbolicLink(aFileView: TFileView; aFile: TFile);
var var
sPath: String; sPath: String;

View file

@ -11,6 +11,8 @@ uses
type type
ILocalFileSource = interface(IRealFileSource) ILocalFileSource = interface(IRealFileSource)
['{22F03840-42C2-0E62-2CCE-677794F64598}']
procedure AddSearchPath( const startPath: String; paths: TStringList );
end; end;
{en {en
@ -18,10 +20,20 @@ type
Empty placeholder for now, allows to check Empty placeholder for now, allows to check
whether a certain file source is local. whether a certain file source is local.
} }
{ TLocalFileSource }
TLocalFileSource = class(TRealFileSource, ILocalFileSource) TLocalFileSource = class(TRealFileSource, ILocalFileSource)
procedure AddSearchPath( const startPath: String; paths: TStringList ); virtual;
end; end;
implementation implementation
{ TLocalFileSource }
procedure TLocalFileSource.AddSearchPath( const startPath: String; paths: TStringList );
begin
end;
end. end.

View file

@ -8,6 +8,9 @@ uses
Classes, SysUtils, Controls, LMessages, Grids, Graphics, Classes, SysUtils, Controls, LMessages, Grids, Graphics,
uDisplayFile, DCXmlConfig, uTypes, uDisplayFile, DCXmlConfig, uTypes,
uFileView, uFileViewWithMainCtrl, uFileViewWithGrid, uFileView, uFileViewWithMainCtrl, uFileViewWithGrid,
{$IFDEF DARWIN}
uDarwinFileView,
{$ENDIF}
uFile, uFileSource, uFileProperty; uFile, uFileSource, uFileProperty;
type type
@ -19,7 +22,6 @@ type
TBriefDrawGrid = class(TFileViewGrid) TBriefDrawGrid = class(TFileViewGrid)
protected protected
FBriefView: TBriefFileView; FBriefView: TBriefFileView;
FOnDrawCell: TFileViewOnDrawCell;
protected protected
procedure UpdateView; override; procedure UpdateView; override;
procedure CalculateColRowCount; override; procedure CalculateColRowCount; override;
@ -37,16 +39,11 @@ type
function CellToIndex(ACol, ARow: Integer): Integer; override; function CellToIndex(ACol, ARow: Integer): Integer; override;
procedure IndexToCell(Index: Integer; out ACol, ARow: Integer); override; procedure IndexToCell(Index: Integer; out ACol, ARow: Integer); override;
procedure DrawCell(aCol, aRow: Integer; aRect: TRect; aState: TGridDrawState); override; procedure DrawCell(aCol, aRow: Integer; aRect: TRect; aState: TGridDrawState); override;
property OnDrawCell: TFileViewOnDrawCell read FOnDrawCell write FOnDrawCell;
end; end;
{ TBriefFileView } { TBriefFileView }
TBriefFileView = class (TFileViewWithGrid) TBriefFileView = class (TFileViewWithGrid)
protected
function GetOnDrawCell: TFileViewOnDrawCell;
procedure SetOnDrawCell( OnDrawCell: TFileViewOnDrawCell );
protected protected
procedure CreateDefault(AOwner: TWinControl); override; procedure CreateDefault(AOwner: TWinControl); override;
function GetFileViewGridClass: TFileViewGridClass; override; function GetFileViewGridClass: TFileViewGridClass; override;
@ -59,9 +56,7 @@ type
procedure DoFileUpdated(AFile: TDisplayFile; UpdatedProperties: TFilePropertiesTypes = []); override; procedure DoFileUpdated(AFile: TDisplayFile; UpdatedProperties: TFilePropertiesTypes = []); override;
public public
function Clone(NewParent: TWinControl): TBriefFileView; override; function Clone(NewParent: TWinControl): TBriefFileView; override;
procedure CloneTo(FileView: TFileView); override;
procedure SaveConfiguration(AConfig: TXmlConfig; ANode: TXmlNode; ASaveHistory:boolean); override; procedure SaveConfiguration(AConfig: TXmlConfig; ANode: TXmlNode; ASaveHistory:boolean); override;
property OnDrawCell: TFileViewOnDrawCell read GetOnDrawCell write SetOnDrawCell;
end; end;
implementation implementation
@ -356,44 +351,8 @@ begin
end; end;
procedure TBriefDrawGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure TBriefDrawGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
function handleMBLeft: Boolean;
var
handler: TFileSourceUIHandler;
params: TFileSourceUIParams;
index: Integer;
begin
Result:= False;
params:= Default( TFileSourceUIParams );
params.sender:= FBriefView;
params.fs:= FBriefView.FileSource;
params.multiColumns:= False;
handler:= params.fs.GetUIHandler;
if handler = nil then
Exit;
params.shift:= Shift;
params.x:= X;
params.y:= Y;
MouseToCell( X, Y, params.col, params.row );
if NOT self.IsRowIndexValid(params.row) then
Exit;
index:= CellToIndex( params.col, params.row );
if index < 0 then
Exit;
ColRowToOffset(True, True, params.col, params.drawingRect.Left, params.drawingRect.Right );
ColRowToOffset(False, True, params.row, params.drawingRect.Top, params.drawingRect.Bottom );
params.displayFile:= FBriefView.FFiles[index];
Result:= handler.click( params );
end;
begin begin
if (Button = mbLeft) and handleMBLeft then if (Button = mbLeft) and self.doCellClick( Shift, X, Y ) then
begin begin
FBriefView.tmRenameFile.Enabled := False; FBriefView.tmRenameFile.Enabled := False;
FBriefView.FRenameFileIndex := -1; FBriefView.FRenameFileIndex := -1;
@ -536,23 +495,6 @@ var
Canvas.TextOut(aRect.Left + 2, iTextTop, s); Canvas.TextOut(aRect.Left + 2, iTextTop, s);
end; //of DrawIconCell end; //of DrawIconCell
procedure callFileSourceDrawCell;
var
handler: TFileSourceUIHandler;
begin
handler:= FBriefView.FileSource.GetUIHandler;
if handler = nil then
Exit;
handler.draw( params );
end;
procedure callOnDrawCell;
begin
if Assigned(OnDrawCell) and not(CsDesigning in ComponentState) then
OnDrawCell(FBriefView,aCol,aRow,params.drawingRect,params.focused,AFile);
end;
//------------------------------------------------------ //------------------------------------------------------
//end of subprocedures //end of subprocedures
//------------------------------------------------------ //------------------------------------------------------
@ -565,26 +507,21 @@ begin
FileSourceDirectAccess:= fspDirectAccess in FBriefView.FileSource.Properties; FileSourceDirectAccess:= fspDirectAccess in FBriefView.FileSource.Properties;
params:= Default( TFileSourceUIParams ); params:= Default( TFileSourceUIParams );
params.sender:= FBriefView;
params.fs:= FBriefView.FileSource;
params.multiColumns:= False;
params.col:= aCol; params.col:= aCol;
params.row:= aRow; params.row:= aRow;
params.displayFile:= aFile; params.displayFile:= aFile;
params.drawingRect:= aRect;
params.focused:= (gdSelected in aState) and FBriefView.Active;
if AFile.DisplayStrings.Count = 0 then if AFile.DisplayStrings.Count = 0 then
FBriefView.MakeColumnsStrings(AFile); FBriefView.MakeColumnsStrings(AFile);
PrepareColors(aFile, aCol, aRow, aRect, aState); PrepareColors(aFile, aCol, aRow, aRect, aState);
iTextTop := aRect.Top + (RowHeights[aRow] - Canvas.TextHeight('Wg')) div 2; iTextTop := aRect.Top + (RowHeights[aRow] - self.calcTextHeight) div 2;
DrawIconCell; DrawIconCell;
self.doCellEnhancedDraw( params );
params.drawingRect:= aRect;
params.focused:= (gdSelected in aState) and FBriefView.Active;
callFileSourceDrawCell;
callOnDrawCell;
end end
else else
begin begin
@ -599,16 +536,6 @@ end;
{ TBriefFileView } { TBriefFileView }
function TBriefFileView.GetOnDrawCell: TFileViewOnDrawCell;
begin
Result:= TBriefDrawGrid(dgPanel).OnDrawCell;
end;
procedure TBriefFileView.SetOnDrawCell(OnDrawCell: TFileViewOnDrawCell);
begin
TBriefDrawGrid(dgPanel).OnDrawCell:= OnDrawCell;
end;
procedure TBriefFileView.CreateDefault(AOwner: TWinControl); procedure TBriefFileView.CreateDefault(AOwner: TWinControl);
begin begin
inherited CreateDefault(AOwner); inherited CreateDefault(AOwner);
@ -616,6 +543,10 @@ begin
// Changing height of a FileView with horizontal scrolling when hiding quick search causes file jumps under mouse // Changing height of a FileView with horizontal scrolling when hiding quick search causes file jumps under mouse
quickSearch.LimitedAutoHide := True; quickSearch.LimitedAutoHide := True;
{$IFDEF DARWIN}
TBriefDrawGrid(dgPanel).OnDrawCell:= @darwinFileViewDrawHandler.onDrawCell;
{$ENDIF}
end; end;
function TBriefFileView.GetFileViewGridClass: TFileViewGridClass; function TBriefFileView.GetFileViewGridClass: TFileViewGridClass;
@ -718,13 +649,6 @@ begin
Result := TBriefFileView.Create(NewParent, Self); Result := TBriefFileView.Create(NewParent, Self);
end; end;
procedure TBriefFileView.CloneTo(FileView: TFileView);
begin
inherited CloneTo(FileView);
if FileView is TBriefFileView then
TBriefFileView(FileView).OnDrawCell:= self.OnDrawCell;
end;
procedure TBriefFileView.SaveConfiguration(AConfig: TXmlConfig; ANode: TXmlNode; ASaveHistory:boolean); procedure TBriefFileView.SaveConfiguration(AConfig: TXmlConfig; ANode: TXmlNode; ASaveHistory:boolean);
begin begin
inherited SaveConfiguration(AConfig, ANode, ASaveHistory); inherited SaveConfiguration(AConfig, ANode, ASaveHistory);

View file

@ -18,7 +18,10 @@ uses
DCXmlConfig, DCXmlConfig,
DCBasicTypes, DCBasicTypes,
uTypes, uTypes,
uSmoothScrollingGrid, {$IFDEF DARWIN}
uDarwinFileView,
{$ENDIF}
uFileViewBaseGrid,
uFileViewWithGrid; uFileViewWithGrid;
type type
@ -29,21 +32,21 @@ type
{ TDrawGridEx } { TDrawGridEx }
TDrawGridEx = class(TSmoothScrollingGrid) TDrawGridEx = class(TFileViewBaseGrid)
private private
FMouseDownY: Integer; FMouseDownY: Integer;
FLastMouseMoveTime: QWord; FLastMouseMoveTime: QWord;
FLastMouseScrollTime: QWord; FLastMouseScrollTime: QWord;
ColumnsView: TColumnsFileView; ColumnsView: TColumnsFileView;
FOnDrawCell: TFileViewOnDrawCell;
function GetGridHorzLine: Boolean; function GetGridHorzLine: Boolean;
function GetGridVertLine: Boolean; function GetGridVertLine: Boolean;
procedure SetGridHorzLine(const AValue: Boolean); procedure SetGridHorzLine(const AValue: Boolean);
procedure SetGridVertLine(const AValue: Boolean); procedure SetGridVertLine(const AValue: Boolean);
protected protected
function getFileView: TFileView; override;
procedure DragCanceled; override; procedure DragCanceled; override;
procedure DoMouseMoveScroll(X, Y: Integer); procedure DoMouseMoveScroll(X, Y: Integer);
procedure KeyDown(var Key: Word; Shift: TShiftState); override; procedure KeyDown(var Key: Word; Shift: TShiftState); override;
@ -71,8 +74,6 @@ type
procedure UpdateView; procedure UpdateView;
function MouseOnGrid(X, Y: LongInt): Boolean;
// Returns height of all the header rows. // Returns height of all the header rows.
function GetHeaderHeight: Integer; function GetHeaderHeight: Integer;
@ -89,7 +90,8 @@ type
property GridVertLine: Boolean read GetGridVertLine write SetGridVertLine; property GridVertLine: Boolean read GetGridVertLine write SetGridVertLine;
property GridHorzLine: Boolean read GetGridHorzLine write SetGridHorzLine; property GridHorzLine: Boolean read GetGridHorzLine write SetGridHorzLine;
property OnDrawCell: TFileViewOnDrawCell read FOnDrawCell write FOnDrawCell; function CellToIndex(ACol, ARow: Integer): Integer; override;
function isMultiColumns: Boolean; override;
end; end;
TColumnResized = procedure (Sender: TObject; ColumnIndex: Integer; ColumnNewsize: integer) of object; TColumnResized = procedure (Sender: TObject; ColumnIndex: Integer; ColumnNewsize: integer) of object;
@ -108,9 +110,6 @@ type
dgPanel: TDrawGridEx; dgPanel: TDrawGridEx;
FOnColumnResized: TColumnResized; FOnColumnResized: TColumnResized;
function GetOnDrawCell: TFileViewOnDrawCell;
procedure SetOnDrawCell( OnDrawCell: TFileViewOnDrawCell );
function GetColumnsClass: TPanelColumnsClass; function GetColumnsClass: TPanelColumnsClass;
procedure SetRowCount(Count: Integer); procedure SetRowCount(Count: Integer);
@ -214,7 +213,6 @@ type
procedure SetGridFunctionDim(ExternalDimFunction:TFunctionDime); procedure SetGridFunctionDim(ExternalDimFunction:TFunctionDime);
property OnColumnResized: TColumnResized read FOnColumnResized write FOnColumnResized; property OnColumnResized: TColumnResized read FOnColumnResized write FOnColumnResized;
property OnDrawCell: TFileViewOnDrawCell read GetOnDrawCell write SetOnDrawCell;
published published
procedure cm_SaveFileDetailsToFile(const Params: array of string); procedure cm_SaveFileDetailsToFile(const Params: array of string);
procedure cm_CopyFileDetailsToClip(const Params: array of string); procedure cm_CopyFileDetailsToClip(const Params: array of string);
@ -932,6 +930,9 @@ begin
dgPanel.OnTopLeftChanged:= @dgPanelTopLeftChanged; dgPanel.OnTopLeftChanged:= @dgPanelTopLeftChanged;
dgpanel.OnResize:= @dgPanelResize; dgpanel.OnResize:= @dgPanelResize;
dgPanel.OnHeaderSized:= @dgPanelHeaderSized; dgPanel.OnHeaderSized:= @dgPanelHeaderSized;
{$IFDEF DARWIN}
dgPanel.OnDrawCell:= @darwinFileViewDrawHandler.onDrawCell;
{$ENDIF}
pmColumnsMenu := TPopupMenu.Create(Self); pmColumnsMenu := TPopupMenu.Create(Self);
pmColumnsMenu.Parent := Self; pmColumnsMenu.Parent := Self;
@ -962,7 +963,6 @@ begin
with TColumnsFileView(FileView) do with TColumnsFileView(FileView) do
begin begin
FColumnsSortDirections := Self.FColumnsSortDirections; FColumnsSortDirections := Self.FColumnsSortDirections;
OnDrawCell := Self.OnDrawCell;
ActiveColm := Self.ActiveColm; ActiveColm := Self.ActiveColm;
ActiveColmSlave := nil; ActiveColmSlave := nil;
@ -1121,16 +1121,6 @@ begin
Dec(Result.Last, dgPanel.FixedRows); Dec(Result.Last, dgPanel.FixedRows);
end; end;
function TColumnsFileView.GetOnDrawCell: TFileViewOnDrawCell;
begin
Result:= dgPanel.OnDrawCell;
end;
procedure TColumnsFileView.SetOnDrawCell(OnDrawCell: TFileViewOnDrawCell);
begin
dgPanel.OnDrawCell:= OnDrawCell;
end;
function TColumnsFileView.GetColumnsClass: TPanelColumnsClass; function TColumnsFileView.GetColumnsClass: TPanelColumnsClass;
begin begin
if isSlave then if isSlave then
@ -1141,17 +1131,13 @@ end;
function TColumnsFileView.GetFileIndexFromCursor(X, Y: Integer; out AtFileList: Boolean): PtrInt; function TColumnsFileView.GetFileIndexFromCursor(X, Y: Integer; out AtFileList: Boolean): PtrInt;
var var
bTemp: Boolean;
iRow, iCol: LongInt; iRow, iCol: LongInt;
begin begin
with dgPanel do with dgPanel do
begin begin
bTemp:= AllowOutboundEvents; MouseToCellWithoutOutbound(X, Y, iCol, iRow);
AllowOutboundEvents:= False; Result:= CellToIndex(iCol, iRow);
MouseToCell(X, Y, iCol, iRow); AtFileList:= Y >= GetHeaderHeight;
AllowOutboundEvents:= bTemp;
Result:= IfThen(iRow < 0, InvalidFileIndex, iRow - FixedRows);
AtFileList := Y >= GetHeaderHeight;
end; end;
end; end;
@ -1424,7 +1410,7 @@ procedure TDrawGridEx.UpdateView;
OldFont := Canvas.Font; OldFont := Canvas.Font;
Canvas.Font := Font; Canvas.Font := Font;
SetCanvasFont(GetColumnFont(0, True)); SetCanvasFont(GetColumnFont(0, True));
Result := Canvas.TextHeight('Wg'); Result := self.calcTextHeight;
Canvas.Font := OldFont; Canvas.Font := OldFont;
end; end;
@ -1952,23 +1938,6 @@ var
aRect := CCell.Rect; aRect := CCell.Rect;
end; end;
procedure callFileSourceDrawCell;
var
handler: TFileSourceUIHandler;
begin
handler:= ColumnsView.FileSource.GetUIHandler;
if handler = nil then
Exit;
handler.draw( params );
end;
procedure callOnDrawCell;
begin
if Assigned(OnDrawCell) and not(CsDesigning in ComponentState) then
OnDrawCell(Self.ColumnsView,aCol,aRow,params.drawingRect,params.focused,AFile);
end;
//------------------------------------------------------ //------------------------------------------------------
//end of subprocedures //end of subprocedures
//------------------------------------------------------ //------------------------------------------------------
@ -1991,19 +1960,18 @@ begin
FileSourceDirectAccess := fspDirectAccess in ColumnsView.FileSource.Properties; FileSourceDirectAccess := fspDirectAccess in ColumnsView.FileSource.Properties;
params:= Default( TFileSourceUIParams ); params:= Default( TFileSourceUIParams );
params.sender:= Self.ColumnsView;
params.fs:= Self.ColumnsView.FileSource;
params.multiColumns:= True;
params.col:= aCol; params.col:= aCol;
params.row:= aRow; params.row:= aRow;
params.displayFile:= aFile; params.displayFile:= aFile;
params.drawingRect:= aRect;
params.focused:= (gdSelected in aState) and ColumnsView.Active;
if AFile.DisplayStrings.Count = 0 then if AFile.DisplayStrings.Count = 0 then
ColumnsView.MakeColumnsStrings(AFile, ColumnsSet); ColumnsView.MakeColumnsStrings(AFile, ColumnsSet);
PrepareColors; PrepareColors;
iTextTop := aRect.Top + (aRect.Height - Canvas.TextHeight('Wg')) div 2; iTextTop := aRect.Top + (aRect.Height - self.calcTextHeight) div 2;
if gExtendCellWidth then if gExtendCellWidth then
DrawExtendedCells DrawExtendedCells
@ -2015,10 +1983,7 @@ begin
DrawOtherCell; DrawOtherCell;
end; end;
params.drawingRect:= aRect; self.doCellEnhancedDraw( params );
params.focused:= (gdSelected in aState) and ColumnsView.Active;
callFileSourceDrawCell;
callOnDrawCell;
DrawCellGrid(aCol,aRow,aRect,aState); DrawCellGrid(aCol,aRow,aRect,aState);
DrawLines; DrawLines;
@ -2054,37 +2019,6 @@ var
FileSystem: String; FileSystem: String;
Background: Boolean; Background: Boolean;
procedure handleMBLeft;
var
handler: TFileSourceUIHandler;
params: TFileSourceUIParams;
begin
params:= Default( TFileSourceUIParams );
params.sender:= self.ColumnsView;
params.fs:= self.ColumnsView.FileSource;
params.multiColumns:= True;
handler:= params.fs.GetUIHandler;
if handler = nil then
Exit;
params.shift:= Shift;
params.x:= X;
params.y:= Y;
MouseToCell( X, Y, params.col, params.row );
if NOT self.IsRowIndexValid(params.row) then
Exit;
ColRowToOffset(True, True, params.col, params.drawingRect.Left, params.drawingRect.Right );
ColRowToOffset(False, True, params.row, params.drawingRect.Top, params.drawingRect.Bottom );
if params.row <= FixedRows then
Exit;
params.displayFile:= ColumnsView.FFiles[params.row - FixedRows];
handler.click( params );
end;
begin begin
if ColumnsView.IsLoadingFileList then Exit; if ColumnsView.IsLoadingFileList then Exit;
{$IFDEF LCLGTK2} {$IFDEF LCLGTK2}
@ -2106,7 +2040,7 @@ begin
if Button = mbLeft then if Button = mbLeft then
begin begin
handleMBLeft; self.doCellClick( Shift, X, Y );
end else if Button = mbRight then end else if Button = mbRight then
begin begin
{ If right click on header } { If right click on header }
@ -2238,18 +2172,6 @@ begin
if ColumnsView.IsMouseSelecting then DoMouseMoveScroll(X, Y); if ColumnsView.IsMouseSelecting then DoMouseMoveScroll(X, Y);
end; end;
function TDrawGridEx.MouseOnGrid(X, Y: LongInt): Boolean;
var
bTemp: Boolean;
iRow, iCol: LongInt;
begin
bTemp:= AllowOutboundEvents;
AllowOutboundEvents:= False;
MouseToCell(X, Y, iCol, iRow);
AllowOutboundEvents:= bTemp;
Result:= not ((iCol < 0) and (iRow < 0));
end;
function TDrawGridEx.GetHeaderHeight: Integer; function TDrawGridEx.GetHeaderHeight: Integer;
var var
i : Integer; i : Integer;
@ -2287,6 +2209,11 @@ begin
Options := Options - [goVertLine]; Options := Options - [goVertLine];
end; end;
function TDrawGridEx.getFileView: TFileView;
begin
Result:= self.ColumnsView;
end;
function TDrawGridEx.GetVisibleRows: TRange; function TDrawGridEx.GetVisibleRows: TRange;
var var
w: Integer; w: Integer;
@ -2437,5 +2364,18 @@ begin
end; end;
end; end;
function TDrawGridEx.CellToIndex(ACol, ARow: Integer): Integer;
begin
Result:= -1;
if (ARow < 0) or (ARow >= RowCount) then
Exit;
Result:= ARow - FixedRows;
end;
function TDrawGridEx.isMultiColumns: Boolean;
begin
Result:= True;
end;
end. end.

View file

@ -518,7 +518,9 @@ type
var DropParams: TDropParams); virtual abstract; var DropParams: TDropParams); virtual abstract;
procedure GoToHistoryIndex(aFileSourceIndex, aPathIndex: Integer); procedure GoToHistoryIndex(aFileSourceIndex, aPathIndex: Integer);
function hasPrevHistory: Boolean;
procedure GoToPrevHistory; procedure GoToPrevHistory;
function hasNextHistory: Boolean;
procedure GoToNextHistory; procedure GoToNextHistory;
procedure SetDragCursor(Shift: TShiftState); virtual; abstract; procedure SetDragCursor(Shift: TShiftState); virtual; abstract;
@ -1061,15 +1063,9 @@ begin
end; end;
function TFileView.calcFileHashKey(const FileName, APath: String): String; function TFileView.calcFileHashKey(const FileName, APath: String): String;
var
subPath: String;
begin begin
if fspMounted in FileSource.GetProperties then begin if FFlatView then begin
Result := ExcludeTrailingPathDelimiter( APath + FileName ); Result := ExcludeTrailingPathDelimiter( IncludeTrailingPathDelimiter(APath) + FileName );
end else if FFlatView then begin
subPath := APath.Substring( currentPath.Length );
if subPath<>EmptyStr then subPath := IncludeTrailingPathDelimiter(subPath);
Result := subPath + FileName;
end else begin end else begin
Result := FileName; Result := FileName;
end; end;
@ -3595,6 +3591,15 @@ begin
end; end;
end; end;
function TFileView.hasPrevHistory: Boolean;
begin
Result:= False;
if FHistory.CurrentPathIndex > 0 then
Result:= True
else if FHistory.CurrentFileSourceIndex > 0 then
Result:= True;
end;
procedure TFileView.GoToPrevHistory; procedure TFileView.GoToPrevHistory;
var var
aFileSourceIndex, aPathIndex: Integer; aFileSourceIndex, aPathIndex: Integer;
@ -3615,6 +3620,17 @@ begin
GoToHistoryIndex(aFileSourceIndex, aPathIndex); GoToHistoryIndex(aFileSourceIndex, aPathIndex);
end; end;
function TFileView.hasNextHistory: Boolean;
begin
Result:= False;
if FHistory.CurrentFileSourceIndex >= 0 then begin
if FHistory.CurrentPathIndex < FHistory.PathsCount[FHistory.CurrentFileSourceIndex] - 1 then
Result:= True
else if FHistory.CurrentFileSourceIndex < FHistory.Count - 1 then
Result:= True;
end;
end;
procedure TFileView.GoToNextHistory; procedure TFileView.GoToNextHistory;
var var
aFileSourceIndex, aPathIndex: Integer; aFileSourceIndex, aPathIndex: Integer;

View file

@ -0,0 +1,143 @@
unit uFileViewBaseGrid;
{$mode ObjFPC}{$H+}
interface
uses
Classes, SysUtils,
uFileSource, uFileView, uFileViewWithMainCtrl,
uSmoothScrollingGrid;
type
{ TFileViewBaseGrid }
TFileViewBaseGrid = class( TSmoothScrollingGrid )
protected
_onDrawCell: TFileViewOnDrawCell;
property OnDrawCell: TFileViewOnDrawCell read _onDrawCell write _onDrawCell;
protected
procedure doCellEnhancedDraw( var params: TFileSourceUIParams );
function doCellClick( const Shift: TShiftState; const X, Y: Integer ): Boolean;
protected
function getFileView: TFileView; virtual; abstract;
function isMultiColumns: Boolean; virtual;
function MouseOnGrid(X, Y: LongInt): Boolean;
procedure MouseToCellWithoutOutbound(X, Y: Integer; out ACol, ARow: Longint);
function ConvertToDecorationRect(const drawingRect: TRect): TRect; virtual;
function CellToIndex(ACol, ARow: Integer): Integer; virtual; abstract;
public
function calcTextHeight: Integer; inline;
end;
implementation
{ TFileViewBaseGrid }
function TFileViewBaseGrid.doCellClick( const Shift: TShiftState; const X, Y: Integer ): Boolean;
var
fileView: TFileView;
handler: TFileSourceUIHandler;
params: TFileSourceUIParams;
index: Integer;
begin
Result:= False;
fileView:= self.getFileView;
params:= Default( TFileSourceUIParams );
params.sender:= fileView;
params.fs:= fileView.FileSource;
params.multiColumns:= self.isMultiColumns;
handler:= params.fs.GetUIHandler;
if handler = nil then
Exit;
params.shift:= Shift;
params.x:= X;
params.y:= Y;
self.MouseToCellWithoutOutbound( X, Y, params.col, params.row );
index:= self.CellToIndex( params.col, params.row );
if index < 0 then
Exit;
self.ColRowToOffset(True, True, params.col, params.drawingRect.Left, params.drawingRect.Right );
self.ColRowToOffset(False, True, params.row, params.drawingRect.Top, params.drawingRect.Bottom );
params.decorationRect:= self.ConvertToDecorationRect( params.drawingRect );
params.displayFile:= fileView.DisplayFiles[index];
Result:= handler.click( params );
end;
procedure TFileViewBaseGrid.doCellEnhancedDraw( var params: TFileSourceUIParams );
procedure doFileSourceDrawCell( var params: TFileSourceUIParams );
var
handler: TFileSourceUIHandler;
begin
handler:= params.fs.GetUIHandler;
if handler = nil then
Exit;
handler.draw( params );
end;
procedure doOnDrawCell( var params: TFileSourceUIParams );
begin
if Assigned(_onDrawCell) and not(CsDesigning in self.ComponentState) then
_onDrawCell( params );
end;
var
fileView: TFileView;
begin
fileView:= self.getFileView;
params.sender:= fileView;
params.fs:= fileView.FileSource;
params.multiColumns:= self.isMultiColumns;
params.decorationRect:= self.ConvertToDecorationRect( params.drawingRect );
doFileSourceDrawCell( params );
doOnDrawCell( params );
end;
function TFileViewBaseGrid.MouseOnGrid(X, Y: LongInt): Boolean;
var
bTemp: Boolean;
iRow, iCol: LongInt;
begin
bTemp:= AllowOutboundEvents;
AllowOutboundEvents:= False;
MouseToCell(X, Y, iCol, iRow);
AllowOutboundEvents:= bTemp;
Result:= not (CellToIndex(iCol, iRow) < 0);
end;
procedure TFileViewBaseGrid.MouseToCellWithoutOutbound(X, Y: Integer; out ACol,
ARow: Longint);
var
bTemp: Boolean;
begin
bTemp:= AllowOutboundEvents;
AllowOutboundEvents:= False;
MouseToCell(X, Y, ACol, ARow);
AllowOutboundEvents:= bTemp;
end;
function TFileViewBaseGrid.ConvertToDecorationRect(const drawingRect: TRect ): TRect;
begin
Result:= drawingRect;
end;
function TFileViewBaseGrid.calcTextHeight: Integer;
begin
Result:= self.Canvas.TextHeight('Wg');
end;
function TFileViewBaseGrid.isMultiColumns: Boolean;
begin
Result:= False;
end;
end.

View file

@ -8,7 +8,7 @@ uses
Classes, SysUtils, Controls, Grids, Graphics, StdCtrls, LCLVersion, Classes, SysUtils, Controls, Grids, Graphics, StdCtrls, LCLVersion,
uDisplayFile, DCXmlConfig, uFileSorting, uFileProperty, uDisplayFile, DCXmlConfig, uFileSorting, uFileProperty,
uFileViewWithMainCtrl, uFile, uFileViewHeader, uFileView, uFileSource, uFileViewWithMainCtrl, uFile, uFileViewHeader, uFileView, uFileSource,
uSmoothScrollingGrid; uFileViewBaseGrid;
type type
@ -16,12 +16,13 @@ type
{ TFileViewGrid } { TFileViewGrid }
TFileViewGrid = class(TSmoothScrollingGrid) TFileViewGrid = class(TFileViewBaseGrid)
protected protected
FLastMouseMoveTime: QWord; FLastMouseMoveTime: QWord;
FLastMouseScrollTime: QWord; FLastMouseScrollTime: QWord;
FFileView: TFileViewWithGrid; FFileView: TFileViewWithGrid;
protected protected
function getFileView: TFileView; override;
procedure Scroll(Message: Cardinal; ScrollCode: SmallInt); procedure Scroll(Message: Cardinal; ScrollCode: SmallInt);
{$IF lcl_fullversion < 1080003} {$IF lcl_fullversion < 1080003}
function SelectCell(aCol, aRow: Integer): Boolean; override; function SelectCell(aCol, aRow: Integer): Boolean; override;
@ -30,7 +31,6 @@ type
procedure ColWidthsChanged; override; procedure ColWidthsChanged; override;
procedure FinalizeWnd; override; procedure FinalizeWnd; override;
procedure InitializeWnd; override; procedure InitializeWnd; override;
function MouseOnGrid(X, Y: LongInt): Boolean;
procedure DoOnResize; override; procedure DoOnResize; override;
procedure DragCanceled; override; procedure DragCanceled; override;
procedure KeyDown(var Key : Word; Shift : TShiftState); override; procedure KeyDown(var Key : Word; Shift : TShiftState); override;
@ -51,7 +51,6 @@ type
{$endif} {$endif}
public public
constructor Create(AOwner: TComponent; AParent: TWinControl); reintroduce; virtual; constructor Create(AOwner: TComponent; AParent: TWinControl); reintroduce; virtual;
function CellToIndex(ACol, ARow: Integer): Integer; virtual; abstract;
procedure IndexToCell(Index: Integer; out ACol, ARow: Integer); virtual; abstract; procedure IndexToCell(Index: Integer; out ACol, ARow: Integer); virtual; abstract;
property BorderWidth: Integer read GetBorderWidth; property BorderWidth: Integer read GetBorderWidth;
end; end;
@ -209,6 +208,11 @@ begin
inherited KeyDown(Key, Shift); inherited KeyDown(Key, Shift);
end; end;
function TFileViewGrid.getFileView: TFileView;
begin
Result:= self.FFileView;
end;
procedure TFileViewGrid.Scroll(Message: Cardinal; ScrollCode: SmallInt); procedure TFileViewGrid.Scroll(Message: Cardinal; ScrollCode: SmallInt);
var var
Msg: TLMScroll; Msg: TLMScroll;
@ -246,18 +250,6 @@ begin
CalculateColRowCount; CalculateColRowCount;
end; end;
function TFileViewGrid.MouseOnGrid(X, Y: LongInt): Boolean;
var
bTemp: Boolean;
iRow, iCol: LongInt;
begin
bTemp:= AllowOutboundEvents;
AllowOutboundEvents:= False;
MouseToCell(X, Y, iCol, iRow);
AllowOutboundEvents:= bTemp;
Result:= not (CellToIndex(iCol, iRow) < 0);
end;
procedure TFileViewGrid.MouseDown(Button: TMouseButton; Shift: TShiftState; X, procedure TFileViewGrid.MouseDown(Button: TMouseButton; Shift: TShiftState; X,
Y: Integer); Y: Integer);
begin begin
@ -671,17 +663,13 @@ end;
function TFileViewWithGrid.GetFileIndexFromCursor(X, Y: Integer; out AtFileList: Boolean): PtrInt; function TFileViewWithGrid.GetFileIndexFromCursor(X, Y: Integer; out AtFileList: Boolean): PtrInt;
var var
bTemp: Boolean;
iRow, iCol: LongInt; iRow, iCol: LongInt;
begin begin
with dgPanel do with dgPanel do
begin begin
bTemp:= AllowOutboundEvents; MouseToCellWithoutOutbound(X, Y, iCol, iRow);
AllowOutboundEvents:= False;
MouseToCell(X, Y, iCol, iRow);
AllowOutboundEvents:= bTemp;
Result:= CellToIndex(iCol, iRow); Result:= CellToIndex(iCol, iRow);
AtFileList := True; // Always at file list because header in dgPanel not used AtFileList:= True; // Always at file list because header in dgPanel not used
end; end;
end; end;

View file

@ -33,6 +33,7 @@ uses
uFile, uDisplayFile, uFile, uDisplayFile,
uFileViewWorker, uFileViewWorker,
uOrderedFileView, uOrderedFileView,
uFileSource,
uFileView, uFileView,
uDragDropEx, uDragDropEx,
uFileViewNotebook, uFileViewNotebook,
@ -40,8 +41,7 @@ uses
type type
TFileViewOnDrawCell = procedure(Sender: TFileView; aCol, aRow: Integer; TFileViewOnDrawCell = procedure( var params: TFileSourceUIParams ) of object;
aRect: TRect; focused: Boolean; aFile: TDisplayFile) of object;
TRenameFileActionType=(rfatName,rfatExt,rfatFull,rfatToSeparators,rfatNextSeparated); TRenameFileActionType=(rfatName,rfatExt,rfatFull,rfatToSeparators,rfatNextSeparated);
@ -239,7 +239,7 @@ uses
GTK2Globals, // for DblClickTime GTK2Globals, // for DblClickTime
{$ENDIF} {$ENDIF}
LCLIntf, LCLProc, LazUTF8, Forms, Dialogs, Buttons, DCOSUtils, DCStrUtils, LCLIntf, LCLProc, LazUTF8, Forms, Dialogs, Buttons, DCOSUtils, DCStrUtils,
fMain, uShowMsg, uLng, uFileProperty, uFileSource, uFileSourceOperationTypes, fMain, uShowMsg, uLng, uFileProperty, uFileSourceOperationTypes,
uGlobs, uInfoToolTip, uFileSystemFileSource, uFileSourceUtil, uGlobs, uInfoToolTip, uFileSystemFileSource, uFileSourceUtil,
uArchiveFileSourceUtil, uFormCommands, uKeyboard, uFileSourceSetFilePropertyOperation, uArchiveFileSourceUtil, uFormCommands, uKeyboard, uFileSourceSetFilePropertyOperation,
uFileSystemWatcher; uFileSystemWatcher;
@ -1282,7 +1282,7 @@ begin
AFile := FFiles[FHintFileIndex]; AFile := FFiles[FHintFileIndex];
if AFile.FSFile.Name = '..' then Exit; if AFile.FSFile.Name = '..' then Exit;
HintInfo^.HintStr:= AFile.FSFile.Name; HintInfo^.HintStr:= FileSource.GetFileName( AFile.FSFile );
sHint:= GetFileInfoToolTip(FileSource, AFile.FSFile); sHint:= GetFileInfoToolTip(FileSource, AFile.FSFile);
if (sHint <> EmptyStr) then if (sHint <> EmptyStr) then
HintInfo^.HintStr:= HintInfo^.HintStr + LineEnding + sHint; HintInfo^.HintStr:= HintInfo^.HintStr + LineEnding + sHint;

View file

@ -886,7 +886,7 @@ begin
if PathIsAbsolute then if PathIsAbsolute then
Result := (FFiles[Index].FSFile.FullPath = aFilePath) Result := (FFiles[Index].FSFile.FullPath = aFilePath)
else else
Result := (FFiles[Index].FSFile.Name = aFilePath); Result := (FileSource.GetFileName(FFiles[Index].FSFile) = aFilePath);
if Result then if Result then
begin begin
SetUpdate(Index); SetUpdate(Index);

View file

@ -6,7 +6,11 @@ interface
uses uses
Classes, SysUtils, Controls, Grids, Types, DCXmlConfig, uFileSource, uOrderedFileView, Classes, SysUtils, Controls, Grids, Types, DCXmlConfig, uFileSource, uOrderedFileView,
uDisplayFile, uFileViewWorker, uThumbnails, uFileView, uTypes, uFileViewWithGrid, uDisplayFile, uFileViewWorker, uThumbnails, uFileView, uTypes,
uFileViewWithMainCtrl, uFileViewWithGrid,
{$IFDEF DARWIN}
uDarwinFileView,
{$ENDIF}
uFileProperty, uFile; uFileProperty, uFile;
type type
@ -58,6 +62,7 @@ type
FUpdateColCount: Integer; FUpdateColCount: Integer;
protected protected
procedure KeyDown(var Key : Word; Shift : TShiftState); override; procedure KeyDown(var Key : Word; Shift : TShiftState); override;
procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
procedure MouseMove(Shift: TShiftState; X, Y: Integer); override; procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override; procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
procedure DragOver(Source: TObject; X,Y: Integer; State: TDragState; var Accept: Boolean); override; procedure DragOver(Source: TObject; X,Y: Integer; State: TDragState; var Accept: Boolean); override;
@ -71,6 +76,8 @@ type
function CellToIndex(ACol, ARow: Integer): Integer; override; function CellToIndex(ACol, ARow: Integer): Integer; override;
procedure IndexToCell(Index: Integer; out ACol, ARow: Integer); override; procedure IndexToCell(Index: Integer; out ACol, ARow: Integer); override;
procedure DrawCell(aCol, aRow: Integer; aRect: TRect; aState: TGridDrawState); override; procedure DrawCell(aCol, aRow: Integer; aRect: TRect; aState: TGridDrawState); override;
function ConvertToDecorationRect(const drawingRect: TRect): TRect; override;
end; end;
@ -254,6 +261,14 @@ begin
end; end;
end; end;
procedure TThumbDrawGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X,
Y: Integer);
begin
if Button = mbLeft then
self.doCellClick( Shift, X, Y );
inherited MouseUp(Button, Shift, X, Y);
end;
procedure TThumbDrawGrid.MouseMove(Shift: TShiftState; X, Y: Integer); procedure TThumbDrawGrid.MouseMove(Shift: TShiftState; X, Y: Integer);
begin begin
inherited MouseMove(Shift, X, Y); inherited MouseMove(Shift, X, Y);
@ -462,12 +477,13 @@ var
//shared variables //shared variables
AFile: TDisplayFile; AFile: TDisplayFile;
FileSourceDirectAccess: Boolean; FileSourceDirectAccess: Boolean;
params: TFileSourceUIParams;
//------------------------------------------------------ //------------------------------------------------------
//begin subprocedures //begin subprocedures
//------------------------------------------------------ //------------------------------------------------------
procedure DrawIconCell(aRect: TRect); procedure DrawIconCell;
var var
factor: Double; factor: Double;
IconRect: TRect; IconRect: TRect;
@ -478,9 +494,11 @@ var
s: string; s: string;
IconID: PtrInt; IconID: PtrInt;
Bitmap: TBitmap; Bitmap: TBitmap;
aRect: TRect;
begin begin
factor:= self.GetCanvasScaleFactor; factor:= self.GetCanvasScaleFactor;
iTextTop := aRect.Bottom - Canvas.TextHeight('Wg'); aRect:= params.drawingRect;
iTextTop:= aRect.Bottom - self.calcTextHeight;
IconID := AFile.Tag; IconID := AFile.Tag;
@ -536,16 +554,28 @@ begin
begin begin
AFile:= FThumbView.FFiles[Idx]; AFile:= FThumbView.FFiles[Idx];
FileSourceDirectAccess:= fspDirectAccess in FFileView.FileSource.Properties; FileSourceDirectAccess:= fspDirectAccess in FFileView.FileSource.Properties;
params:= Default( TFileSourceUIParams );
params.col:= aCol;
params.row:= aRow;
params.displayFile:= aFile;
params.focused:= (gdSelected in aState) and FThumbView.Active;
if AFile.DisplayStrings.Count = 0 then if AFile.DisplayStrings.Count = 0 then
FThumbView.MakeColumnsStrings(AFile); FThumbView.MakeColumnsStrings(AFile);
PrepareColors(AFile, aCol, aRow, aRect, aState); PrepareColors(AFile, aCol, aRow, aRect, aState);
if gUseFrameCursor then if gUseFrameCursor then begin
DrawIconCell(Rect(aRect.Left + gBorderFrameWidth - 1, aRect.Top + gBorderFrameWidth - 1, params.drawingRect:=
aRect.Right - gBorderFrameWidth + 1, aRect.Bottom - gBorderFrameWidth + 1)) Rect(aRect.Left + gBorderFrameWidth - 1, aRect.Top + gBorderFrameWidth - 1,
else aRect.Right - gBorderFrameWidth + 1, aRect.Bottom - gBorderFrameWidth + 1);
DrawIconCell(aRect); end else begin
params.drawingRect:= aRect;
end;
DrawIconCell;
self.doCellEnhancedDraw( params );
end end
else else
begin begin
@ -558,6 +588,16 @@ begin
DrawLines(Idx, aCol, aRow, aRect, aState); DrawLines(Idx, aCol, aRow, aRect, aState);
end; end;
function TThumbDrawGrid.ConvertToDecorationRect(const drawingRect: TRect): TRect;
var
iTextTop: Integer;
begin
iTextTop:= drawingRect.Bottom - self.calcTextHeight;
Result:= drawingRect;
Result.Bottom:= iTextTop - 1;
Result.Top:= iTextTop - 24;
end;
{ TThumbFileView } { TThumbFileView }
procedure TThumbFileView.ThumbnailsRetrieverOnAbort(AStart: Integer; procedure TThumbFileView.ThumbnailsRetrieverOnAbort(AStart: Integer;
@ -610,6 +650,10 @@ begin
tmMouseScroll.Interval := 200; tmMouseScroll.Interval := 200;
FBitmapList:= TBitmapList.Create(True); FBitmapList:= TBitmapList.Create(True);
FThumbnailManager:= TThumbnailManager.Create(self, gColors.FilePanel^.BackColor); FThumbnailManager:= TThumbnailManager.Create(self, gColors.FilePanel^.BackColor);
{$IFDEF DARWIN}
TThumbDrawGrid(dgPanel).OnDrawCell:= @darwinFileViewDrawHandler.onDrawCell;
{$ENDIF}
end; end;
procedure TThumbFileView.AfterChangePath; procedure TThumbFileView.AfterChangePath;
@ -735,7 +779,7 @@ begin
inherited UpdateRenameFileEditPosition; inherited UpdateRenameFileEditPosition;
ARect := dgPanel.CellRect(dgPanel.Col, dgPanel.Row); ARect := dgPanel.CellRect(dgPanel.Col, dgPanel.Row);
ARect.Top := ARect.Bottom - dgPanel.Canvas.TextHeight('Wg') - 4; ARect.Top := ARect.Bottom - dgPanel.calcTextHeight - 4;
if gInplaceRenameButton and (ARect.Right + edtRename.ButtonWidth < dgPanel.ClientWidth) then if gInplaceRenameButton and (ARect.Right + edtRename.ButtonWidth < dgPanel.ClientWidth) then
Inc(ARect.Right, edtRename.ButtonWidth); Inc(ARect.Right, edtRename.ButtonWidth);

View file

@ -57,7 +57,8 @@ uses
, Glib2, Gtk2 , Glib2, Gtk2
{$ELSEIF DEFINED(DARWIN)} {$ELSEIF DEFINED(DARWIN)}
, CocoaConfig , CocoaConfig
, uMyDarwin , uDarwinApplication
, uDarwinFileView
{$ENDIF} {$ENDIF}
, Types, LMessages; , Types, LMessages;
@ -896,7 +897,6 @@ type
procedure OnNSServiceOpenWithNewTab( filenames:TStringList ); procedure OnNSServiceOpenWithNewTab( filenames:TStringList );
function NSServiceMenuIsReady(): boolean; function NSServiceMenuIsReady(): boolean;
function NSServiceMenuGetFilenames(): TStringArray; function NSServiceMenuGetFilenames(): TStringArray;
procedure NSThemeChangedHandler();
{$ENDIF} {$ENDIF}
procedure LoadWindowState; procedure LoadWindowState;
procedure SaveWindowState; procedure SaveWindowState;
@ -979,11 +979,6 @@ var
LastActiveWindow: TCustomForm = nil; LastActiveWindow: TCustomForm = nil;
{$ENDIF} {$ENDIF}
{$IF (DEFINED(LCLQT) or DEFINED(LCLQT5) or DEFINED(LCLQT6)) and not DEFINED(MSWINDOWS)}
var
CloseQueryResult: Boolean = False;
{$ENDIF}
{$IFDEF LCLGTK2} {$IFDEF LCLGTK2}
var var
MinimizedWindowButton: Boolean = False; MinimizedWindowButton: Boolean = False;
@ -1138,6 +1133,15 @@ begin
Application.AddOnKeyDownBeforeHandler( @GlobalMacOSKeyDownHandler ); Application.AddOnKeyDownBeforeHandler( @GlobalMacOSKeyDownHandler );
{$ENDIF} {$ENDIF}
{$IF DEFINED(LCLQT5) OR DEFINED(LCLQT6)}
// Save original captions
for I:= 0 to mnuMain.Items.Count - 1 do
begin
mnuMain.Items[I].Hint:= mnuMain.Items[I].Caption;
end;
mnuMain.Tag:= PtrInt(ktaNone);
{$ENDIF}
ConvertToolbarBarConfig(gpCfgDir + 'default.bar'); ConvertToolbarBarConfig(gpCfgDir + 'default.bar');
CreateDefaultToolbar; CreateDefaultToolbar;
sStaticTitleBarString := GenerateTitle(); sStaticTitleBarString := GenerateTitle();
@ -1233,8 +1237,6 @@ begin
TDriveWatcher.AddObserver(@OnDriveWatcherEvent); TDriveWatcher.AddObserver(@OnDriveWatcherEvent);
{$IF (DEFINED(LCLQT) or DEFINED(LCLQT5) or DEFINED(LCLQT6)) and not DEFINED(MSWINDOWS)} {$IF (DEFINED(LCLQT) or DEFINED(LCLQT5) or DEFINED(LCLQT6)) and not DEFINED(MSWINDOWS)}
// Fixes bug - [0000033] "DC cancels shutdown in KDE"
// http://doublecmd.sourceforge.net/mantisbt/view.php?id=33
QEventHook:= QObject_hook_create(TQtWidget(Self.Handle).Widget); QEventHook:= QObject_hook_create(TQtWidget(Self.Handle).Widget);
QObject_hook_hook_events(QEventHook, @QObjectEventFilter); QObject_hook_hook_events(QEventHook, @QObjectEventFilter);
{$ENDIF} {$ENDIF}
@ -1257,8 +1259,8 @@ begin
ThemeServices.OnThemeChange:= @AppThemeChange; ThemeServices.OnThemeChange:= @AppThemeChange;
{$IF DEFINED(DARWIN)} {$IF DEFINED(DARWIN)}
InitNSServiceProvider( @OnNSServiceOpenWithNewTab, @NSServiceMenuIsReady, @NSServiceMenuGetFilenames ); TDarwinApplicationUtil.initServiceProvider( @OnNSServiceOpenWithNewTab, @NSServiceMenuIsReady, @NSServiceMenuGetFilenames );
InitNSThemeChangedObserver( @NSThemeChangedHandler ); TDarwinFileViewUtil.init( @ActiveNotebook, @ActiveFrame );
{$ENDIF} {$ENDIF}
end; end;
@ -1864,10 +1866,6 @@ begin
end; end;
end; end;
end; end;
{$IF (DEFINED(LCLQT) or DEFINED(LCLQT5) or DEFINED(LCLQT6)) and not DEFINED(MSWINDOWS)}
CloseQueryResult:= CanClose;
{$ENDIF}
end; end;
procedure TfrmMain.FormDropFiles(Sender: TObject; const FileNames: array of String); procedure TfrmMain.FormDropFiles(Sender: TObject; const FileNames: array of String);
@ -2962,7 +2960,7 @@ constructor TfrmMain.Create(TheOwner: TComponent);
begin begin
CocoaConfigMenu.appMenu.aboutItem:= mnuHelpAbout; CocoaConfigMenu.appMenu.aboutItem:= mnuHelpAbout;
CocoaConfigMenu.appMenu.preferencesItem:= mnuConfigOptions; CocoaConfigMenu.appMenu.preferencesItem:= mnuConfigOptions;
CocoaConfigMenu.appMenu.onCreate:= @onMainMenuCreate; CocoaConfigMenu.appMenu.onCreate:= @darwinOnMainMenuCreate;
end; end;
procedure setMacOSDockMenu(); procedure setMacOSDockMenu();
@ -4215,6 +4213,9 @@ var
begin begin
SetDragCursor(Shift); SetDragCursor(Shift);
if ActiveControl = nil then
ActiveFrame.SetFocus;
// Either left or right panel has to be focused. // Either left or right panel has to be focused.
if not FrameLeft.Focused and if not FrameLeft.Focused and
not FrameRight.Focused then not FrameRight.Focused then
@ -4822,6 +4823,9 @@ begin
ANoteBook.Hint := FileView.CurrentPath; ANoteBook.Hint := FileView.CurrentPath;
end; end;
if Assigned(onFileViewUpdated) then
onFileViewUpdated(FileView);
{if (fspDirectAccess in FileView.FileSource.GetProperties) then {if (fspDirectAccess in FileView.FileSource.GetProperties) then
begin begin
if gTermWindow and Assigned(Cons) then if gTermWindow and Assigned(Cons) then
@ -4966,16 +4970,16 @@ end;
function CompareDrives(Item1, Item2: Pointer): Integer; function CompareDrives(Item1, Item2: Pointer): Integer;
var var
driver1: PDrive absolute Item1; drive1: PDrive absolute Item1;
driver2: PDrive absolute Item2; drive2: PDrive absolute Item2;
begin begin
if driver1 = driver2 then if drive1 = drive2 then
Exit(0); Exit(0);
if driver1^.Path = PathDelim then if drive1^.Path = PathDelim then
Exit(-1); Exit(-1);
if driver2^.Path = PathDelim then if drive2^.Path = PathDelim then
Exit(1); Exit(1);
Result := CompareText(driver1^.DisplayName, driver2^.DisplayName); Result := CompareText(drive1^.DisplayName, drive2^.DisplayName);
end; end;
procedure TfrmMain.UpdateDiskCount; procedure TfrmMain.UpdateDiskCount;
@ -5149,14 +5153,8 @@ begin
FileViewFlags := [fvfDelayLoadingFiles]; FileViewFlags := [fvfDelayLoadingFiles];
if sType = 'columns' then begin if sType = 'columns' then begin
Result := TColumnsFileView.Create(Page, AConfig, ANode, FileViewFlags); Result := TColumnsFileView.Create(Page, AConfig, ANode, FileViewFlags);
{$IFDEF DARWIN}
TColumnsFileView(Result).OnDrawCell:= @DarwinFileViewDrawHelper.OnDrawCell;
{$ENDIF}
end else if sType = 'brief' then begin end else if sType = 'brief' then begin
Result := TBriefFileView.Create(Page, AConfig, ANode, FileViewFlags); Result := TBriefFileView.Create(Page, AConfig, ANode, FileViewFlags);
{$IFDEF DARWIN}
TBriefFileView(Result).OnDrawCell:= @DarwinFileViewDrawHelper.OnDrawCell;
{$ENDIF}
end else if sType = 'thumbnails' then end else if sType = 'thumbnails' then
Result := TThumbFileView.Create(Page, AConfig, ANode, FileViewFlags) Result := TThumbFileView.Create(Page, AConfig, ANode, FileViewFlags)
else begin else begin
@ -5809,6 +5807,29 @@ begin
UpdateFreeSpace(fpRight, True); UpdateFreeSpace(fpRight, True);
end; end;
{$IF DEFINED(LCLQT5) OR DEFINED(LCLQT6)}
// https://github.com/doublecmd/doublecmd/issues/1327
if mnuMain.Tag <> PtrInt(gKeyTyping[ktmAlt]) then
begin
if gKeyTyping[ktmAlt] = ktaNone then
begin
// Enable menu shortcuts
for I:= 0 to mnuMain.Items.Count - 1 do
begin
mnuMain.Items[I].Caption:= mnuMain.Items[I].Hint;
end;
end
else begin
// Disable menu shortcuts
for I:= 0 to mnuMain.Items.Count - 1 do
begin
mnuMain.Items[I].Caption:= StripHotkey(mnuMain.Items[I].Hint);
end;
end;
mnuMain.Tag:= PtrInt(gKeyTyping[ktmAlt])
end;
{$ENDIF}
UpdateHotDirIcons; // Preferable to be loaded even if not required in popupmenu *because* in the tree it's a must, especially when checking for missing directories UpdateHotDirIcons; // Preferable to be loaded even if not required in popupmenu *because* in the tree it's a must, especially when checking for missing directories
ShowTrayIcon(gAlwaysShowTrayIcon); ShowTrayIcon(gAlwaysShowTrayIcon);
UpdateMainTitleBar; UpdateMainTitleBar;
@ -6404,11 +6425,6 @@ begin
FreeAndNil( files ); FreeAndNil( files );
Result:= filenames; Result:= filenames;
end; end;
procedure TfrmMain.NSThemeChangedHandler;
begin
ThemeServices.IntfDoOnThemeChange;
end;
{$ENDIF} {$ENDIF}
procedure TfrmMain.LoadWindowState; procedure TfrmMain.LoadWindowState;
@ -6565,7 +6581,8 @@ begin
if Pos(Address, DrivesList[I]^.Path) = 1 then if Pos(Address, DrivesList[I]^.Path) = 1 then
Exit(I); Exit(I);
end end
else begin else if (DrivesList[I]^.DriveType <> dtSpecial) and Address.IsEmpty then
begin
DrivePath := UTF8UpperCase(DrivesList[I]^.Path); DrivePath := UTF8UpperCase(DrivesList[I]^.Path);
DrivePathLen := UTF8Length(DrivePath); DrivePathLen := UTF8Length(DrivePath);
if (DrivePathLen > LongestPathLen) and IsInPath(DrivePath, Path, True, True) then if (DrivePathLen > LongestPathLen) and IsInPath(DrivePath, Path, True, True) then
@ -7370,7 +7387,7 @@ end;
procedure TfrmMain.OpenNewWindow(Sender: TObject); procedure TfrmMain.OpenNewWindow(Sender: TObject);
begin begin
uMyDarwin.openNewInstance; TDarwinApplicationUtil.openNewInstance;
end; end;
{$ENDIF} {$ENDIF}
@ -7383,15 +7400,6 @@ begin
begin begin
ThemeServices.IntfDoOnThemeChange; ThemeServices.IntfDoOnThemeChange;
end; end;
QEventClose:
begin
TQtWidget(Self.Handle).SlotClose;
Result:= CloseQueryResult;
if Result then
QEvent_accept(Event)
else
QEvent_ignore(Event);
end;
end; end;
end; end;
{$ENDIF} {$ENDIF}

View file

@ -5,7 +5,7 @@ object frmMasterKey: TfrmMasterKey
Width = 480 Width = 480
AutoSize = True AutoSize = True
BorderStyle = bsDialog BorderStyle = bsDialog
Caption = 'Create Master Key' Caption = 'Create Key'
ChildSizing.LeftRightSpacing = 12 ChildSizing.LeftRightSpacing = 12
ChildSizing.TopBottomSpacing = 12 ChildSizing.TopBottomSpacing = 12
ClientHeight = 494 ClientHeight = 494
@ -26,7 +26,7 @@ object frmMasterKey: TfrmMasterKey
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
AutoSize = True AutoSize = True
BorderSpacing.Top = 12 BorderSpacing.Top = 12
Caption = 'Master key' Caption = 'Main Password'
ChildSizing.LeftRightSpacing = 12 ChildSizing.LeftRightSpacing = 12
ChildSizing.TopBottomSpacing = 10 ChildSizing.TopBottomSpacing = 10
ChildSizing.VerticalSpacing = 6 ChildSizing.VerticalSpacing = 6
@ -42,7 +42,7 @@ object frmMasterKey: TfrmMasterKey
Height = 25 Height = 25
Top = 10 Top = 10
Width = 243 Width = 243
Caption = 'Master pass&word:' Caption = 'Pass&word:'
end end
object edtPassword: TEdit object edtPassword: TEdit
Left = 255 Left = 255
@ -84,6 +84,7 @@ object frmMasterKey: TfrmMasterKey
Width = 456 Width = 456
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
AutoSize = True AutoSize = True
BorderSpacing.Top = 6
Caption = 'Key transformation' Caption = 'Key transformation'
ChildSizing.LeftRightSpacing = 12 ChildSizing.LeftRightSpacing = 12
ChildSizing.TopBottomSpacing = 12 ChildSizing.TopBottomSpacing = 12
@ -100,7 +101,7 @@ object frmMasterKey: TfrmMasterKey
Top = 12 Top = 12
Width = 428 Width = 428
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
Caption = 'The master key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder.' Caption = 'The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder.'
WordWrap = True WordWrap = True
end end
object pnlKeyTransform: TPanel object pnlKeyTransform: TPanel
@ -144,7 +145,6 @@ object frmMasterKey: TfrmMasterKey
) )
Style = csDropDownList Style = csDropDownList
TabOrder = 0 TabOrder = 0
Text = 'Argon2d'
end end
object lblIterations: TLabel object lblIterations: TLabel
Left = 0 Left = 0
@ -159,7 +159,7 @@ object frmMasterKey: TfrmMasterKey
Top = 49 Top = 49
Width = 161 Width = 161
MaxValue = 64 MaxValue = 64
MinValue = 2 MinValue = 1
TabOrder = 1 TabOrder = 1
Value = 4 Value = 4
end end
@ -185,7 +185,7 @@ object frmMasterKey: TfrmMasterKey
Height = 25 Height = 25
Top = 0 Top = 0
Width = 65 Width = 65
MaxValue = 1024 MaxValue = 2048
MinValue = 64 MinValue = 64
TabOrder = 0 TabOrder = 0
Value = 64 Value = 64
@ -260,7 +260,7 @@ object frmMasterKey: TfrmMasterKey
Height = 17 Height = 17
Top = 12 Top = 12
Width = 441 Width = 441
Caption = 'Specify a new master key, which will be used to encrypt the password store.' Caption = 'Specify a new key, which will be used to encrypt the password store.'
end end
object pnlButtons: TButtonPanel object pnlButtons: TButtonPanel
AnchorSideTop.Control = gbKeyTransform AnchorSideTop.Control = gbKeyTransform
@ -275,6 +275,7 @@ object frmMasterKey: TfrmMasterKey
OKButton.Name = 'OKButton' OKButton.Name = 'OKButton'
OKButton.DefaultCaption = True OKButton.DefaultCaption = True
OKButton.Enabled = False OKButton.Enabled = False
OKButton.OnClick = OKButtonClick
HelpButton.Name = 'HelpButton' HelpButton.Name = 'HelpButton'
HelpButton.DefaultCaption = True HelpButton.DefaultCaption = True
CloseButton.Name = 'CloseButton' CloseButton.Name = 'CloseButton'

16
src/fmasterkey.lrj Normal file
View file

@ -0,0 +1,16 @@
{"version":1,"strings":[
{"hash":144963961,"name":"tfrmmasterkey.caption","sourcebytes":[67,114,101,97,116,101,32,75,101,121],"value":"Create Key"},
{"hash":187360180,"name":"tfrmmasterkey.gbmasterkey.caption","sourcebytes":[77,97,105,110,32,80,97,115,115,119,111,114,100],"value":"Main Password"},
{"hash":98107610,"name":"tfrmmasterkey.lblpassword.caption","sourcebytes":[80,97,115,115,38,119,111,114,100,58],"value":"Pass&word:"},
{"hash":16880282,"name":"tfrmmasterkey.lblrepeat.caption","sourcebytes":[38,82,101,112,101,97,116,32,112,97,115,115,119,111,114,100,58],"value":"&Repeat password:"},
{"hash":104957070,"name":"tfrmmasterkey.gbkeytransform.caption","sourcebytes":[75,101,121,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110],"value":"Key transformation"},
{"hash":14598126,"name":"tfrmmasterkey.lblheader.caption","sourcebytes":[84,104,101,32,107,101,121,32,105,115,32,116,114,97,110,115,102,111,114,109,101,100,32,117,115,105,110,103,32,97,32,107,101,121,32,100,101,114,105,118,97,116,105,111,110,32,102,117,110,99,116,105,111,110,46,32,84,104,105,115,32,97,100,100,115,32,97,32,119,111,114,107,32,102,97,99,116,111,114,32,97,110,100,32,109,97,107,101,115,32,100,105,99,116,105,111,110,97,114,121,32,97,110,100,32,103,117,101,115,115,105,110,103,32,97,116,116,97,99,107,115,32,104,97,114,100,101,114,46],"value":"The key is transformed using a key derivation function. This adds a work factor and makes dictionary and guessing attacks harder."},
{"hash":245823418,"name":"tfrmmasterkey.lblfunction.caption","sourcebytes":[38,75,101,121,32,100,101,114,105,118,97,116,105,111,110,32,102,117,110,99,116,105,111,110,58],"value":"&Key derivation function:"},
{"hash":169937386,"name":"tfrmmasterkey.lbliterations.caption","sourcebytes":[38,73,116,101,114,97,116,105,111,110,115,58],"value":"&Iterations:"},
{"hash":63204218,"name":"tfrmmasterkey.lblmemory.caption","sourcebytes":[38,77,101,109,111,114,121,58],"value":"&Memory:"},
{"hash":1298,"name":"tfrmmasterkey.lblunit.caption","sourcebytes":[77,66],"value":"MB"},
{"hash":166429210,"name":"tfrmmasterkey.lblparallelism.caption","sourcebytes":[38,80,97,114,97,108,108,101,108,105,115,109,58],"value":"&Parallelism:"},
{"hash":81675854,"name":"tfrmmasterkey.lblfooter.caption","sourcebytes":[84,104,101,32,109,111,114,101,32,105,116,101,114,97,116,105,111,110,115,44,32,116,104,101,32,104,97,114,100,101,114,32,97,114,101,32,100,105,99,116,105,111,110,97,114,121,32,97,110,100,32,103,117,101,115,115,105,110,103,32,97,116,116,97,99,107,115,44,32,98,117,116,32,97,108,115,111,32,112,97,115,115,119,111,114,100,32,115,116,111,114,101,32,108,111,97,100,105,110,103,47,115,97,118,105,110,103,32,116,97,107,101,115,32,109,111,114,101,32,116,105,109,101,46],"value":"The more iterations, the harder are dictionary and guessing attacks, but also password store loading/saving takes more time."},
{"hash":371876,"name":"tfrmmasterkey.btntest.caption","sourcebytes":[84,101,115,116],"value":"Test"},
{"hash":181307342,"name":"tfrmmasterkey.lbltext.caption","sourcebytes":[83,112,101,99,105,102,121,32,97,32,110,101,119,32,107,101,121,44,32,119,104,105,99,104,32,119,105,108,108,32,98,101,32,117,115,101,100,32,116,111,32,101,110,99,114,121,112,116,32,116,104,101,32,112,97,115,115,119,111,114,100,32,115,116,111,114,101,46],"value":"Specify a new key, which will be used to encrypt the password store."}
]}

View file

@ -37,9 +37,13 @@ type
pnlMemory: TPanel; pnlMemory: TPanel;
procedure btnTestClick(Sender: TObject); procedure btnTestClick(Sender: TObject);
procedure edtPasswordChange(Sender: TObject); procedure edtPasswordChange(Sender: TObject);
procedure OKButtonClick(Sender: TObject);
private
FTest: Boolean;
function Test(Finish: Boolean): Boolean;
end; end;
function CreateMasterKey(Short: Boolean; out Password: String; out ArgonType: Targon2_type; var M: UInt32; var T, P: UInt16): Boolean; function CreateMasterKey(Short: Boolean; out Password: String; out ArgonType: Targon2_type; out M: UInt32; out T, P: UInt16): Boolean;
implementation implementation
@ -48,17 +52,17 @@ implementation
uses uses
uLng; uLng;
function CreateMasterKey(Short: Boolean; out Password: String; out ArgonType: Targon2_type; var M: UInt32; var T, P: UInt16): Boolean; function CreateMasterKey(Short: Boolean; out Password: String; out ArgonType: Targon2_type; out M: UInt32; out T, P: UInt16): Boolean;
begin begin
with TfrmMasterKey.Create(Application) do with TfrmMasterKey.Create(Application) do
try try
seIterations.Value:= T; seMemory.Value:= 256;
seParallelism.Value:= P; seIterations.Value:= 2;
seParallelism.Value:= 4;
cmbFunction.ItemIndex:= 0; cmbFunction.ItemIndex:= 0;
seMemory.Value:= M div 1024;
lblText.Visible:= not Short;
gbMasterKey.Visible:= not Short; gbMasterKey.Visible:= not Short;
pnlButtons.OKButton.Enabled:= Short; pnlButtons.OKButton.Enabled:= Short;
pnlButtons.OKButton.ModalResult:= mrNone;
Result:= (ShowModal = mrOK); Result:= (ShowModal = mrOK);
@ -81,13 +85,16 @@ end;
{ TfrmMasterKey } { TfrmMasterKey }
procedure TfrmMasterKey.btnTestClick(Sender: TObject); function TfrmMasterKey.Test(Finish: Boolean): Boolean;
const const
HASH_LEN = 88; HASH_LEN = 88;
SALT = 'a5abbcdd86a5d7f9c8a76ea7d0197ed1'; SALT = 'a5abbcdd86a5d7f9c8a76ea7d0197ed1';
Buttons: array[Boolean] of TMsgDlgButtons = ([mbOK], [mbOK, mbCancel]);
var var
Res: Integer; Ret: Integer;
Delay: Double;
StartTime: QWord; StartTime: QWord;
Res: TModalResult;
ArgonType: Targon2_type; ArgonType: Targon2_type;
t_cost, m_cost, parallelism: UInt32; t_cost, m_cost, parallelism: UInt32;
Hash: array[0..Pred(HASH_LEN)] of Byte; Hash: array[0..Pred(HASH_LEN)] of Byte;
@ -103,14 +110,25 @@ begin
end; end;
StartTime:= GetTickCount64; StartTime:= GetTickCount64;
Res:= argon2_kdf(t_cost, m_cost, parallelism, 'password', 8, Ret:= argon2_kdf(t_cost, m_cost, parallelism, 'password', 8,
SALT, Length(SALT), @Hash[0], HASH_LEN, ArgonType); SALT, Length(SALT), @Hash[0], HASH_LEN, ArgonType);
if (Res <> ARGON2_OK) then FTest:= (Ret = ARGON2_OK);
ShowMessage(Format(rsMsgKeyTransformError, [Res]))
if (not FTest) then
MessageDlg(Format(rsMsgKeyTransformError, [Ret]), mtError, [mbOK], 0)
else begin else begin
ShowMessage(Format(rsMsgKeyTransformTime, [Double(GetTickCount64 - StartTime) / 1000])); Delay:= Double(GetTickCount64 - StartTime) / 1000;
Res:= MessageDlg(Format(rsMsgKeyTransformTime, [Delay]), mtInformation, Buttons[Finish], 0);
if Finish and (Res <> mrOK) then FTest:= False;
end; end;
Result:= FTest;
end;
procedure TfrmMasterKey.btnTestClick(Sender: TObject);
begin
Test(False);
end; end;
procedure TfrmMasterKey.edtPasswordChange(Sender: TObject); procedure TfrmMasterKey.edtPasswordChange(Sender: TObject);
@ -118,5 +136,13 @@ begin
pnlButtons.OKButton.Enabled:= (Length(edtPassword.Text) > 0) and (edtPassword.Text = edtRepeat.Text); pnlButtons.OKButton.Enabled:= (Length(edtPassword.Text) > 0) and (edtPassword.Text = edtRepeat.Text);
end; end;
procedure TfrmMasterKey.OKButtonClick(Sender: TObject);
begin
if FTest or Test(True) then
begin
ModalResult:= mrOK;
end;
end;
end. end.

View file

@ -2171,8 +2171,8 @@ begin
end end
else else
begin begin
edFind.Color := clWindow; edFind.Color := clDefault;
edFind.Font.Color := clWindowText; edFind.Font.Color := clDefault;
end; end;
end; end;

View file

@ -102,7 +102,7 @@ uses
{$IF not DEFINED(darwin)} {$IF not DEFINED(darwin)}
, uDarkStyle , uDarkStyle
{$ELSE} {$ELSE}
, uMyDarwin , uDarwinApplication
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
; ;
@ -269,7 +269,7 @@ begin
if g_darkModeSupported then if g_darkModeSupported then
Result:= [oesfNeedsRestart]; Result:= [oesfNeedsRestart];
{$ELSE} {$ELSE}
setMacOSAppearance( gAppMode ); TDarwinApplicationUtil.setTheme( gAppMode );
{$ENDIF} {$ENDIF}
SaveEarlyConfig; SaveEarlyConfig;
except except

View file

@ -308,8 +308,8 @@ inherited frmOptionsFileAssoc: TfrmOptionsFileAssoc
Top = 10 Top = 10
Width = 192 Width = 192
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
OnChange = edIconFileNameChange
TabOrder = 0 TabOrder = 0
OnKeyDown = edIconFileNameKeyDown
end end
end end
object gbExts: TGroupBox object gbExts: TGroupBox

View file

@ -114,6 +114,8 @@ type
procedure btnStartPathVarHelperClick(Sender: TObject); procedure btnStartPathVarHelperClick(Sender: TObject);
procedure deStartPathAcceptDirectory(Sender: TObject; var Value: String); procedure deStartPathAcceptDirectory(Sender: TObject; var Value: String);
procedure deStartPathChange(Sender: TObject); procedure deStartPathChange(Sender: TObject);
procedure edIconFileNameKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtParamsChange(Sender: TObject); procedure edtParamsChange(Sender: TObject);
procedure edIconFileNameChange(Sender: TObject); procedure edIconFileNameChange(Sender: TObject);
procedure fneCommandAcceptFileName(Sender: TObject; var Value: String); procedure fneCommandAcceptFileName(Sender: TObject; var Value: String);
@ -294,8 +296,12 @@ begin
begin begin
sName := Exts.Items[I].Name; sName := Exts.Items[I].Name;
// load icon for use in OnDrawItem procedure try
Bitmap := PixMapManager.LoadBitmapEnhanced(Exts.Items[I].Icon, gIconsSize, True, lbFileTypes.Color); // load icon for use in OnDrawItem procedure
Bitmap := PixMapManager.LoadBitmapEnhanced(Exts.Items[I].Icon, gIconsSize, True, lbFileTypes.Color);
except
Bitmap := nil;
end;
lbFileTypes.Items.AddObject(sName, Bitmap); lbFileTypes.Items.AddObject(sName, Bitmap);
end; end;
@ -647,8 +653,8 @@ end;
{ TfrmOptionsFileAssoc.lbFileTypesSelectionChange } { TfrmOptionsFileAssoc.lbFileTypesSelectionChange }
procedure TfrmOptionsFileAssoc.lbFileTypesSelectionChange(Sender: TObject; User: boolean); procedure TfrmOptionsFileAssoc.lbFileTypesSelectionChange(Sender: TObject; User: boolean);
var var
I: Integer;
ExtCommand: TExtAction; ExtCommand: TExtAction;
I: integer;
bmpTemp: TBitmap = nil; bmpTemp: TBitmap = nil;
begin begin
if (lbFileTypes.ItemIndex >= 0) and (lbFileTypes.ItemIndex < Exts.Count) then if (lbFileTypes.ItemIndex >= 0) and (lbFileTypes.ItemIndex < Exts.Count) then
@ -657,6 +663,7 @@ begin
Application.ProcessMessages; Application.ProcessMessages;
lbExts.Items.Clear; lbExts.Items.Clear;
Application.ProcessMessages; Application.ProcessMessages;
sbtnIcon.Glyph.Clear;
ExtCommand := Exts.Items[lbFileTypes.ItemIndex]; ExtCommand := Exts.Items[lbFileTypes.ItemIndex];
lbExts.Items.Assign(ExtCommand.Extensions); lbExts.Items.Assign(ExtCommand.Extensions);
@ -667,12 +674,15 @@ begin
end; end;
if lbActions.Count > 0 then lbActions.ItemIndex := 0; if lbActions.Count > 0 then lbActions.ItemIndex := 0;
bmpTemp := PixMapManager.LoadBitmapEnhanced(ExtCommand.Icon, 32, True, sbtnIcon.Color);
try try
sbtnIcon.Glyph := bmpTemp; bmpTemp := PixMapManager.LoadBitmapEnhanced(ExtCommand.Icon, 32, True, sbtnIcon.Color);
finally try
if Assigned(bmpTemp) then sbtnIcon.Glyph := bmpTemp;
finally
FreeAndNil(bmpTemp); FreeAndNil(bmpTemp);
end;
except
// Ignore
end; end;
FUpdatingControls := True; // Don't trigger OnChange FUpdatingControls := True; // Don't trigger OnChange
@ -736,6 +746,16 @@ begin
deStartPath.Directory := deStartPath.Text; deStartPath.Directory := deStartPath.Text;
end; end;
procedure TfrmOptionsFileAssoc.edIconFileNameKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if Key = VK_RETURN then
begin
Key := 0;
edIconFileNameChange(edIconFileName);
end;
end;
{ TfrmOptionsFileAssoc.miActionsClick } { TfrmOptionsFileAssoc.miActionsClick }
// The "tag" of the menu item calling this will give us information about the task to do. // The "tag" of the menu item calling this will give us information about the task to do.
@ -901,7 +921,10 @@ var
begin begin
sFileName := mbExpandFileName(edIconFileName.Text); sFileName := mbExpandFileName(edIconFileName.Text);
if ShowOpenIconDialog(Self, sFileName) then if ShowOpenIconDialog(Self, sFileName) then
begin
edIconFileName.Text := GetFileAssocFilenameToSave(fameIcon, sFileName); edIconFileName.Text := GetFileAssocFilenameToSave(fameIcon, sFileName);
edIconFileNameChange(edIconFileName);
end;
end; end;
{ TfrmOptionsFileAssoc.InsertAddSingleExtensionToLists } { TfrmOptionsFileAssoc.InsertAddSingleExtensionToLists }
@ -1259,30 +1282,53 @@ var
bmpTemp: TBitmap; bmpTemp: TBitmap;
Index: integer; Index: integer;
begin begin
sbtnIcon.Glyph.Clear;
if sFileName <> EmptyStr then if sFileName <> EmptyStr then
begin begin
bmpTemp := PixMapManager.LoadBitmapEnhanced(sFileName, 32, True, sbtnIcon.Color); try
if Assigned(bmpTemp) then bmpTemp := PixMapManager.LoadBitmapEnhanced(sFileName, 32, True, sbtnIcon.Color);
begin
sbtnIcon.Glyph.Assign(bmpTemp); if Assigned(bmpTemp) then
FreeAndNil(bmpTemp); begin
end sbtnIcon.Glyph.Assign(bmpTemp);
else FreeAndNil(bmpTemp);
sbtnIcon.Glyph.Clear; end;
end except
else on E: Exception do
sbtnIcon.Glyph.Clear; begin
msgError(E.Message);
end;
end;
end;
Index := lbFileTypes.ItemIndex; Index := lbFileTypes.ItemIndex;
if (Index >= 0) and (Index < Exts.Count) then if (Index >= 0) and (Index < Exts.Count) then
begin begin
FreeIcon(Index); FreeIcon(Index);
// save icon for use in OnDrawItem procedure Exts.Items[Index].IconIndex:= -1;
if sFileName <> EmptyStr then lbFileTypes.Items.Objects[Index] := PixMapManager.LoadBitmapEnhanced(sFileName, gIconsSize, True, Color); Exts.Items[Index].Icon:= EmptyStr;
lbFileTypes.Repaint;
Exts.Items[Index].Icon := sFileName; // save icon for use in OnDrawItem procedure
Exts.Items[Index].IconIndex := -1; if not sbtnIcon.Glyph.Empty then
try
if (gIconsSize <> 32) then
bmpTemp:= PixMapManager.LoadBitmapEnhanced(sFileName, gIconsSize, True, Color)
else begin
bmpTemp:= TBitmap.Create;
bmpTemp.Assign(sbtnIcon.Glyph);
end;
Exts.Items[Index].Icon := sFileName;
lbFileTypes.Items.Objects[Index] := bmpTemp;
except
on E: Exception do
begin
msgError(E.Message);
end;
end;
lbFileTypes.Repaint;
end; end;
end; end;

View file

@ -188,6 +188,7 @@ begin
begin begin
LocalVisualFontElements[iFontIndex].FontEdit.Text := gFonts[TDCFont(iFontIndex)].Name; LocalVisualFontElements[iFontIndex].FontEdit.Text := gFonts[TDCFont(iFontIndex)].Name;
FontOptionsToFont(gFonts[TDCFont(iFontIndex)], LocalVisualFontElements[iFontIndex].FontEdit.Font); FontOptionsToFont(gFonts[TDCFont(iFontIndex)], LocalVisualFontElements[iFontIndex].FontEdit.Font);
LocalVisualFontElements[iFontIndex].FontSpindEdit.HandleNeeded;
LocalVisualFontElements[iFontIndex].FontSpindEdit.Value := gFonts[TDCFont(iFontIndex)].Size; LocalVisualFontElements[iFontIndex].FontSpindEdit.Value := gFonts[TDCFont(iFontIndex)].Size;
end; end;
end; end;

View file

@ -9,7 +9,7 @@ uses
Classes, SysUtils, Forms, Controls, ComCtrls, Graphics, Classes, SysUtils, Forms, Controls, ComCtrls, Graphics,
fOptionsFrame, uPixMapManager, fOptionsFrame, uPixMapManager,
fMain, uFileSystemFileSource, uFileViewNotebook, fMain, uFileSystemFileSource, uFileViewNotebook,
uiCloudDriver, uiCloudDriverConfig, uiCloudDriverUtil; uiCloudDrive, uiCloudDriveConfig, uiCloudDriveUtil;
type type
@ -48,7 +48,7 @@ begin
newPage:= notebook.NewPage(Notebook.ActiveView); newPage:= notebook.NewPage(Notebook.ActiveView);
fs:= TFileSystemFileSource.GetFileSource; fs:= TFileSystemFileSource.GetFileSource;
path:= iCloudDriverUtil.getAppFullPath( String(appsListView.Selected.Data) ); path:= iCloudDriveUtil.getAppFullPath( String(appsListView.Selected.Data) );
newPage.FileView.AddFileSource( fs, path ); newPage.FileView.AddFileSource( fs, path );
notebook.PageIndex:= NewPage.PageIndex; notebook.PageIndex:= NewPage.PageIndex;
end; end;
@ -67,8 +67,8 @@ function TfrmOptionsiCloud.isEnabledApp(const appName: String): Boolean;
var var
i: Integer; i: Integer;
begin begin
for i:= 0 to Length(iCloudDriverConfig.apps)-1 do begin for i:= 0 to Length(iCloudDriveConfig.apps)-1 do begin
if iCloudDriverConfig.apps[i].app = appName then if iCloudDriveConfig.apps[i].app = appName then
Exit( True ); Exit( True );
end; end;
Result:= False; Result:= False;
@ -81,7 +81,7 @@ var
icon: TBitmap; icon: TBitmap;
begin begin
inherited Load; inherited Load;
self.apps:= iCloudDriverUtil.createAllApps; self.apps:= iCloudDriveUtil.createAllApps;
for app in self.apps do begin for app in self.apps do begin
item:= self.appsListView.Items.Add; item:= self.appsListView.Items.Add;
item.Caption:= app.displayName; item.Caption:= app.displayName;
@ -108,9 +108,9 @@ function TfrmOptionsiCloud.Save: TOptionsEditorSaveFlags;
var var
iAllApps: Integer; iAllApps: Integer;
iEnabledApps: Integer; iEnabledApps: Integer;
item: TiCloudDriverConfigAppItem; item: TiCloudDriveConfigAppItem;
begin begin
SetLength( iCloudDriverConfig.apps, appsListView.Items.Count ); SetLength( iCloudDriveConfig.apps, appsListView.Items.Count );
iEnabledApps:= 0; iEnabledApps:= 0;
for iAllApps:=0 to appsListView.Items.Count-1 do begin for iAllApps:=0 to appsListView.Items.Count-1 do begin
if NOT appsListView.Items[iAllApps].Checked then if NOT appsListView.Items[iAllApps].Checked then
@ -118,11 +118,11 @@ begin
item.name:= appsListView.Items[iAllApps].Caption; item.name:= appsListView.Items[iAllApps].Caption;
item.app:= String( appsListView.Items[iAllApps].Data ); item.app:= String( appsListView.Items[iAllApps].Data );
iCloudDriverConfig.apps[iEnabledApps]:= item; iCloudDriveConfig.apps[iEnabledApps]:= item;
inc( iEnabledApps ); inc( iEnabledApps );
end; end;
SetLength( iCloudDriverConfig.apps, iEnabledApps ); SetLength( iCloudDriveConfig.apps, iEnabledApps );
iCloudDriverConfigUtil.save; iCloudDriveConfigUtil.save;
Result:= [oesfNeedsRestart]; Result:= [oesfNeedsRestart];
FreeAndNil( self.apps ); FreeAndNil( self.apps );

View file

@ -546,7 +546,7 @@ uses
{$if lcl_fullversion >= 4990000} {$if lcl_fullversion >= 4990000}
, SynEditWrappedView , SynEditWrappedView
{$endif} {$endif}
{$IFDEF LCLGTK2} {$IF DEFINED(LCLGTK2) OR DEFINED(DARWIN)}
, uGraphics , uGraphics
{$ENDIF} {$ENDIF}
; ;
@ -3053,6 +3053,10 @@ begin
BitmapConvert(TRasterImage(Image.Picture.Graphic)); BitmapConvert(TRasterImage(Image.Picture.Graphic));
end; end;
end; end;
{$ENDIF}
{$IF DEFINED(DARWIN)}
if Image.Picture.Graphic is TRasterImage then
BitmapConvert(TRasterImage(Image.Picture.Graphic));
{$ENDIF} {$ENDIF}
bImage:= True; bImage:= True;
bAnimation:= False; bAnimation:= False;

Some files were not shown because too many files have changed in this diff Show more