Garl 0 Report post Posted January 26, 2020 просмотр имён хардлинка пока не реализован. добавлена кнопка просмотра Симлинка из диалога хардлинка Share this post Link to post Share on other sites
Garl 0 Report post Posted January 26, 2020 если будет время- проверьте плиз скорость поиска в ночнушке. вдруг стало быстрее... Share this post Link to post Share on other sites
Guest WAJIM Report post Posted January 26, 2020 Поиск *.* (~23000 файлов) без содержимого в c:\windows\ (к диску обращения нет!): nightly_w32.zip: 30 с v2.31.0407/W32 : 9 с Поиск *.php с содержимым "min(" среди ~1200 файлов, найдено 12 файлов (к диску обращения нет!): nightly_w32.zip : 38 с v2.31.0407/W32 : 1 с Share this post Link to post Share on other sites
Garl 0 Report post Posted January 27, 2020 странно, поиск *.exe по папке (594 найдено) nightly_w32.zip: 26 с ndn_2_31_5309_bin_w32 - 54c v2.31.0407/W32 - 19c v2.31.1478 - 15c но весь фокус ещё и в кэшировании (повторный поиск происходит быстрее) а ещё можно заметить разницу между Ctrl-H и Ctrl-S последнее быстрее читает и отображает количество файлов... и так же по сравнению со старыми версиями заметно медленнее происходит построение дерева дисков и списка ветви каталога (бранча), Видать где то в последнем и закрался "тормознутый" код. Share this post Link to post Share on other sites
Guest WAJIM Report post Posted January 27, 2020 Я же выше написал, что тесты делались с уже закешированными данными с диска. Сделайте поиск по содержимому, разница в скорости будет еще больше. Share this post Link to post Share on other sites
Guest DRON Report post Posted January 27, 2020 При поиске без содержимого (~1000 файлов) версия 2020/01/27/WIN64(WinNT) в 2.5 раза медленнее чем 2020/01/24/WIN64(WinNT) и в 7 раз медленнее чем 22.03.2010/WIN32(W9x/WinNT). Так же замечу, что скорость сканирования при разрешении 80x25 в три раза выше чем при 190x56, а при нажатии Ctrl+S или Ctrl+H результат вообще мгновенный (<0.5c). И теперь последний эксперимент: уменьшаем размер панели с файлами (не консоли) до минимума и результат получается меньше чем за секунду, что в десятки раз быстрее чем последняя версия с максимальным размером консоли. Вывод: все проблемы исключительно в коде обновления консоли. Насколько я помню по исходникам DN/OSP там при любом пуке перерисовывается вся иерархия окон включая невидимые, что для цикличных операций неприемлемо. При сканировании файлов ситуация ещё хуже, так как для каждого файла происходит не одно, а несколько обновлений. Короче надо обновлять не после каждого файла, а не чаще раза в секунду. Share this post Link to post Share on other sites
Guest DRON Report post Posted January 27, 2020 Если сравнить v2.31.5309 и последнюю, свернув в обоих панели, то на сотне тысяч файлов разница в скорости меньше процента. Так что основная проблема в коде обновления панелей, а чуть меньшая в окошке прогресса. Share this post Link to post Share on other sites
Guest DRON Report post Posted January 27, 2020 Ctrl+S в два раза быстрее Ctrl+H по тем же причинам: Ctrl+S не обновляет панель со списком файлов, если засечь время от начала операции, до прекращения обращений к файловой системе, то время для обоих вариантов будет почти такое же. Share this post Link to post Share on other sites
Basil/2 0 Report post Posted January 28, 2020 On 1/7/2020 at 3:23 PM, Garl said: >3. Ярлык с NDN у меня имеет горячую клавишу Ctrl-Alt-1 (это стандартный механизм винды для ярлыков, установить можно в свойствах ярлыка). Так вот, при таком способе переключения на окно NDN режим поиска все равно включается :( Будет очень здорово, если вы это поправите! хоткей поиска в NDN на какую кнопку установлен? На кнопку Ctrl. То есть нажатие Alt + Ctrl не должно считаться нажатием одиночного Ctrl. On 1/7/2020 at 3:23 PM, Garl said: тут нужно большое желание ;) Это да :) Есть фича попроще - сделайте пожалуйста горячую клавишу для выключения/включения показа скрытых файлов (которая в Options -> Configuration -> System setup). Что-нибудь типа Ctrl-Shift-H. Часто требуется, а лазить по меню неудобно. On 1/7/2020 at 3:23 PM, Garl said: >И конечно все пожелания по редактору тоже сохраняются. а повторить можно? Конечно! 1. Понимать формат UTF-8. 2. Понимать формат UCS-2 (обрезанный UTF-16). 3. Включать режим вертикального блока если к клавише shift дополнительно зажата клавиша alt (как в Notepad++ или Visual Studio). 4. Автоматически переносить слова в редакторе на следующую (word wrap) без добавление CRLF. Сейчас в NDN фактически нельзя набирать обычные тексты, т.к. текст по мере набора вытягивается в одну супердлинную строку. А если включить Wordwrap, то в текст принудительно добавляется CR LF, что нарушает разбиение на абзацы. Share this post Link to post Share on other sites
Guest WAJIM Report post Posted January 28, 2020 6 minutes ago, Basil/2 said: Есть фича попроще - сделайте пожалуйста горячую клавишу для выключения/включения показа скрытых файлов (которая в Options -> Configuration -> System setup) Этот хоткей уже лет 20 как есть: ALT+" Share this post Link to post Share on other sites
Garl 0 Report post Posted January 28, 2020 Quote которая в Options -> Configuration -> System setup). по давней хотелке оно так же дублируется в установке текущей панели (Ctrl-S) Share this post Link to post Share on other sites
Basil/2 0 Report post Posted January 29, 2020 16 hours ago, Guest WAJIM said: Этот хоткей уже лет 20 как есть: ALT+" Оо век живи век учись, спасибо!! Share this post Link to post Share on other sites
Guest Onion Report post Posted January 29, 2020 On 27.01.2020 at 5:31 PM, Guest DRON said: Насколько я помню по исходникам DN/OSP там при любом пуке перерисовывается вся иерархия окон включая невидимые, что для цикличных операций неприемлемо. Крайне сомневаюсь, т.к. в DN используется Turbo Vision, первая версия которой (всего было две) вышла еще в 1990 году с Turbo Pascal 6.0, что значит что делалось это для компов еще аж конца 80-х. И что там «при любом пуке перерисовывается вся иерархия окон включая невидимые» — как-то не укладывается в общую картинку, тем более учитывая большую популярность этого пакета и что писал его не вася школьник. Share this post Link to post Share on other sites
Guest WAJIM Report post Posted January 29, 2020 Обнаружен косяк: делаем поиск каких-то файлов, получаем список с результатами, удаляем один из файлов - в результате этот файл остается в списке поиска еще на N секунд (автообновление панели), Ctrl+R при этом не работает! В старых версиях список найденных файлов обновлялся сразу. Share this post Link to post Share on other sites
Guest Onio Report post Posted January 31, 2020 Вечер пятницы — самое время программить NDN! Где все? Share this post Link to post Share on other sites
Garl 0 Report post Posted February 1, 2020 все кодят.... Share this post Link to post Share on other sites
Garl 0 Report post Posted February 2, 2020 есть у кого опыт общения с PGetStorageDependencyInformation только у меня в HostVolumeName прилетает мусор? Share this post Link to post Share on other sites
Garl 0 Report post Posted February 5, 2020 Просьба в ночнушке проверить путь к файлу образа (iso/vhd/vhdx) в меню выбора диска. Share this post Link to post Share on other sites
Guest DRON Report post Posted February 5, 2020 vhd под семёркой показывает нормально, а iso в ней вроде и не поддерживается. Может ещё ImDisk добавите? function GetImDiskImageFilename(Disk,ImageName:PChar;ImageNameSize:Integer):Integer; type TImDiskCreateData=record DeviceNumber:ULONG; DiskGeometry:DISK_GEOMETRY; ImageOffset:LARGE_INTEGER; Flags:ULONG; DriveLetter:WCHAR; FileNameLength:USHORT; FileName:array[0..MAX_PATH] of WCHAR; end; var Buffer:TImDiskCreateData; Target:PChar; Handle:THandle; Len:DWORD; const ImDiskPrefix='\Device\ImDisk'; DevicePrefix='\\?\GLOBALROOT'; IOCTL_IMDISK_QUERY_DEVICE=$83722008; begin Result:=0; Target:=PChar(@Buffer)+Length(DevicePrefix); Len:=QueryDosDevice(Disk,Target,MAX_PATH); if (Len>0)and CompareMem(Target,PChar(ImDiskPrefix),Length(ImDiskPrefix)) then begin Move(DevicePrefix,Buffer,Length(DevicePrefix)); Handle:=CreateFile(@Buffer,SYNCHRONIZE or GENERIC_READ, FILE_SHARE_READ or FILE_SHARE_WRITE,nil,OPEN_EXISTING,0,0); if Handle<>INVALID_HANDLE_VALUE then begin if DeviceIoControl(Handle,IOCTL_IMDISK_QUERY_DEVICE,nil,0, @Buffer,SizeOf(Buffer),Len,nil) then Result:=WideCharToMultiByte(CP_OEMCP,0,Buffer.FileName, Buffer.FileNameLength,ImageName,ImageNameSize,nil,nil); CloseHandle(Handle); end; end; end; Share this post Link to post Share on other sites
Garl 0 Report post Posted February 7, 2020 как же я не люблю подбирать размерность типов, но видать такова судьба.... Запилил, вроде красиво получается. Share this post Link to post Share on other sites
Guest DRON Report post Posted February 7, 2020 Великолепно! Но есть малюсенькая проблема... Share this post Link to post Share on other sites
Garl 0 Report post Posted February 7, 2020 Что делать? и так по максимуму отображаем... ту только одно посоветовать могу: Ctrl-5 ;) извращенец! Share this post Link to post Share on other sites
Guest Onion Report post Posted February 7, 2020 Что-то я вообще перестал понимать, что к чему. Ни что за «путь к файлу образа», ни что за ImDisk, ни в чем проблема на картинке (и есть ли там этот самый «путь к файлу образа»?), ни в чем смысл последнего ответа. Share this post Link to post Share on other sites
Garl 0 Report post Posted February 7, 2020 1 hour ago, Guest Onion said: Что-то я вообще перестал понимать, что к чему. полный путь к файлу образа очень длинный и не помещается в ширину окна... Quote ни что за ImDisk это драйвер виртуального диска который монтирует диски по аналогии с vhd (управление дисками->подключить файл образа) и мы теперь по опции "ссылка на источник" отображаем путь к файлу образа... Share this post Link to post Share on other sites
Guest Onion Report post Posted February 7, 2020 1 hour ago, Garl said: полный путь к файлу образа очень длинный и не помещается в ширину окна... юзайте процедуру обрезки что в историях просмотра или списке окон — ту, что делает C:\Documents and Sett...rvice.NT AUTHORITY\ntuser.dat.LOG из C:\Documents and Settings\NetworkService.NT AUTHORITY\ntuser.dat.LOG Share this post Link to post Share on other sites