sergiokapone

Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору NME Цитата: если останутся вопросы, готов подробней пояснить.. | Спасибо, понятно. Действительно, удобно. До этой возможности, работал через связку Powershell+ Total Commander. Оставлю это тут, пожалуй Код: # Добавлене файла в сессию WinDjvuExtended из Total Connamder Для добавления используем скрипт `PowerShell` и возможности `Total Commander`. Для вполнения скрипта лучше установить в систему [powershell v7.4.6](!https://github.com/PowerShell/PowerShell). Также в висема должен быть установлен потоковый редактор `sed` из [Cygwin](!https://cygwin.com/install.html). Он нужен для удаления BOM и замены CRLF на LF в файле `.session`. ## 1. Создание PowerShell скрипта Создайте файл `addBookToSession.ps1` с таким содержимым: ```powershell param ( [string]$newFilePath, [string]$sessionFilePath = $(Get-Clipboard) ) # Проверяем, существует ли файл сессии if (-Not (Test-Path -Path $sessionFilePath)) { Write-Output "Файл сессии $sessionFilePath не найден." exit } # Загружаем XML содержимое файла сессии [xml]$sessionXml = Get-Content -Path $sessionFilePath # Добавляем новый файл в конец XML $newFileNode = $sessionXml.CreateElement("file") $newFileNode.SetAttribute("path", $newFilePath) $sessionXml.session.AppendChild($newFileNode) | Out-Null # Сохраняем XML (этот файл пока будет иметь стандартные CRLF и BOM) $sessionXml.Save($sessionFilePath) # Используем sed для удаления BOM и замены CRLF на LF cmd /c "sed -i '1s/^\xEF\xBB\xBF//; s/\r$//' $sessionFilePath" Write-Output "Файл $newFilePath успешно добавлен в $sessionFilePath." ``` ## 2. Настройка кнопки в Total Commander Теперь настроим кнопку в Total Commander, чтобы запускать этот скрипт с панели. Скопируйте в буфер обмена текст ```plaintext TOTALCMD#BAR#DATA pwsh -File C:\pathTo\your\addBookToSession.ps1 %P%N wcmicons.dll,39 Добавить файл в сессию -1 ``` и вставьте его на панель Total Commander. Естественно, путь к файлу скрипта `C:\pathTo\your\ddBookToSession.ps1` замените на свой. ## 4. Использование кнопки Для начала в буфер скопируйте полное имя .`session`-файла (в Total commander это делается из меню Инструменты) Теперь, чтобы добавить новый файл в сессию: 1. Выберите файл на панели Total Commander, который необходимо добавить в сессию 2. Нажмите кнопку **"Добавить файл в сессию"**. Скрипт автоматически добавит файл в файл сессии, а путь к файлу сессии будет взят из буфера обмена. 3. Повторите шаги, по необходимости. | SorokaSV Может я не понял Ваш пост, но.... Пользуйтесь для глядения на Win только WinDjView Extended и будет Вам счастье. |