Закрытие и открытие файла как способ повысить быстродействие индизайна
Недавно был интересный вопрос-описание ситуации: на маке в процессе работы с большим файлом наступает момент, что индизайн уже заметно начинает тормозить; перезагрузишь файл — скорость восстанавливается, но через какой-то период снова возникают задержки, и это заметно в числах: файл значительно растёт в объеме за время работы. С этим что-нибудь можно сделать, чтобы избежать этих возникающих по ходу вёрстки тормозов?
Меня порадовало, что на маке можно легко видеть, как растет рабочий объем файла во время процесса вёрстки, и я предположил, что это не только сам файл, но и вся память под запоминание сделанных шагов. То, что помогает делать откаты и сохраняет сделанное, если по каким-то причинам индизайн свалится.
И сама идея попробовать в процессе работы периодически обнулять эту память мне показалась интересной, поэтому я сделал программу для решения этой задачи.
Идея этого скрипта в выполнении шести шагов, после прохождения которых индизайн должен продолжить работу с текущим файлом быстрее.
Точнее сказать — продолжить работу с такой же скоростью, какая была бы при первом открытии этого файла.
Вот эти шаги:
- Сохранить текущий файл и запомнить открытую страницу.
- Сохранить файл в формате idml.
- Закрыть текущий indd файл.
- Открыть только что созданный idml файл. У него ещё нет имени, и он открыт на первой странице.
- Переименовать или удалить сохранённый indd файл. Вариант ‘переименовать’ или ‘удалить’ определяется состоянием переменной ‘remove’, она в 28-й строке текста скрипта. Если переменная в состоянии false, то этот файл после сохранения будет переименован: его расширение будет ‘.indd#’. Если она true, то после открытия idml файла сохранённый indd файл будет удалён. По умолчанию состояние этой переменной ‘удалить’.
- Дать текущему файлу имя исходного indd файла и перейти на ту страницу, где был запущен этот скрипт.
Итак, если индизайн стал заметно тормозить, просто запустите этот скрипт. И не ждите завершения, используйте эту минутку для отдыха: выйдите из-за стола и разомнитесь.
После окончания работы изменится формат отображения: страница или разворот будут на весь экран, и индизайн должен работать так же быстро, как при первом открытии файла.
Как вы понимаете, теоретически открытие idml-файла — это самый оптимальный вариант начала работы в плане использования оперативной памяти. В этом случае она вся свободна, да и сам файл минимален по объёму. Тут каждый запуск скрипта будет искусственно создавать такое состояние, будто мы начинаем работу не с indd, a c idml файлом.
Попробуйте в работе этот скрипт, и отпишитесь тут, заметно ли ускорение. Теория — дело хорошее, но интересна и живая практика на большом числе машин.
И если скрипт вам оказался полезным, черкните пару-тройку строк у себя для репоста, чтобы читатели ваших сообщений могли скачать эту утилиту. Возможно, это первая программа такого плана, и если она окажется практичной, то её полезно было бы иметь на каждой машине, где есть индизайн.
После скачивания разместите скрипт в папке пользовательских скриптов Индизайна Scripts Panel.
Скачать скриптВторая ссылка для скачивания:
https://www.dropbox.com/s/kc44tpmcfss8gft/FreeFileMemory.zip?dl=0
Последние комментарии