AkelPad v4.8.4 x86
SaveAs.js v2.17
CommonFunctions.js v2.11
Call("Scripts::Main", 1, "SaveAs.js")
получаю ошибки:
Не удается прочитать файл "D:\AkelFiles\piugs\Scripts\SaveAs.js"
или
Скрипт: D:\AkelFiles\plugs\Scripts\Include\CommonFunctions.js
Строка: 106
Символ: 10
Ошибка: "undefined"- есть null или не является объектом
Код: 800A138F
Источник: Ошибка выполнения Microsoft JScript
kadvlad wrote:Сохранить выделение в файл
...
или новый файл сохраняется полностью как оригинальный (выделение при этом запоминается).
где проблема?
Про ошибки выполнения JScript ничего не скажу, но вот, судя по описанию, скрипт и не должен "сохранять выделение в файл". Выделение используется только чтобы получить предполагаемое имя файла (из первой строки выделения). Т.е. то, что при удачном запуске сохраняется все содержимое вкладки, а не только выделение никак не ошибка и, соответственно, не проблема.
kadvlad wrote:Ведь существует функция ... а значит, должна быть возможность сохранять только выделенный фрагмент...
/?
Не уверен (что должна быть).
Здесь вообще очень непростое отношение к словам "должен", "должна"...
Возможно для SDI-режима это и актуально, но сам я работаю в MDI-режиме, и потому не вижу проблемы в том, чтобы создать новую вкладку, вставить в неё выделенный фрагмент и, тем самым, свести задачу сохранения "фрагмента" к стандартной.
Но у автора скрипта вполне может быть иное мнение.
AkelPad.GetSelText();
AkelPad.Command(4101); или Function CreateNewTab()
AkelPad.Command(4106);
// а вот дальше при необходиомсти можно воспользоваться и функционалом SaveAs.js
а есть ли возможность сделать так, чтобы просто при выделении фрагмента и вызове команды "Сохранить как.." в окне последней появлялся чекбокс "только выделенный фрагмент", без автоматизации подстановки пути/имени/расширения и без автосохранения? Ну, или опционально выводить диалог для сохранения фрагмента?
Т.е. чтоб был универсальный выбор: сохранять весь файл либо только фрагмент.
К сожалению, сам я не справлюсь с такой задачей.
Спасибо.
Надеюсь, этот скрипт окажется полезен многим. Честно говоря, я немного смущён, что задача оказалась сложнее, чем мне думалось.
Тем приятнее видеть, что программа обладает такими богатыми возможностями.
Infocatcher
Подскажите, пожалуйста, как можно заставить jsBeautifier.js не обрезать строки? После 255го символа сносит на новую строку, в параметрах ничего похожего. Это ограничение HTML?
Skif_off wrote:Подскажите, пожалуйста, как можно заставить jsBeautifier.js не обрезать строки? После 255го символа сносит на новую строку, в параметрах ничего похожего. Это ограничение HTML?
-wrapLineLength=0
Только есть тонкость: это задаст "wrap_line_length" для оригинального кода и для HTML выставится ограничение в 32786 символов.
Но, в принципе, -wrapLineLength=1000000 тоже должен работать.
Infocatcher
Как сделать правильнее? Не могу ничего внятного нагуглить, откуда эти числа? Скрипт, так понимаю, не делает различия между PHP, HTML или XML, для XML нагуглил максимальный размер переменной - 2 гига.
Не будет ли разумным оставить как есть (делалось определенно более опытными, чем я ) и просто добавить еще один пункт меню для FB2 с -wrapLineLength=1000000? С другой стороны в сохраненных страницах не раз видел что весь код в одну строку, HTMLTidy так не делает (для XML).
постепенно просматриваю скрипты, приглянулся этот.
настроил: CTRL-TAB = вперёд / CTRL-SHIFT-TAB = назад
появляется список табов, но для переключения на выбранный таб нужно жать ENTER.
1) возможно ли автоматически переключаться на выбранный таб при отпускании клавиши CTRL?
2) возможно ли настроить переключение мышью, по аналогии с веб-браузерами: ПКМ+скролл вверх/вниз?
3) возможно ли настроить фиксированный размер шрифта в списке табов, без привязки к текущему размеру в осн.окне?
4) возможно ли настроить формирование списка табов по аналогии с Окно>Вкладки>Правая-Левая, а не в порядке их открытия?
Skif_off wrote:Как сделать правильнее? Не могу ничего внятного нагуглить, откуда эти числа? Скрипт, так понимаю, не делает различия между PHP, HTML или XML, для XML нагуглил максимальный размер переменной - 2 гига.
Не будет ли разумным оставить как есть (делалось определенно более опытными, чем я ) и просто добавить еще один пункт меню для FB2 с -wrapLineLength=1000000? С другой стороны в сохраненных страницах не раз видел что весь код в одну строку, HTMLTidy так не делает (для XML).
Числа исключительно из исходного кода... вроде бы как.
Сейчас там вот такое: /js/lib/beautify.js#L272
if (this.line_char_count >= this.wrap_line_length) { //insert a line when the wrap_line_length is reached
this.print_newline(false, content);
this.print_indentation(content);
}
И потом это же только для удобства – разбивать или нет длинную оригинальную строку на фрагменты разумной длины.
По поводу различий. Видов обработки сейчас только три: JavaScript, HTML и CSS внутри HTML. Все прочие XML-образные штуки идут бонусом из-за схожести структуры.