Orion9

|
Posted: Mon May 04, 2026 12:25 Post subject: |
|
|
yozhik
Там по сути только два ключа могут играть роль, как мне кажется
| Code: | ; Set to 1 to allow scripts execution
AllowScripting=1
;
; Set to 1 to allow Java applets to execute
AllowJava=1 |
| yozhik wrote: | | Нужно в ф-ции toggleColumn дописать переход к якорю. А это я не умею |
Не игнорируйте болвана — он все умеет.
 how do i go to an anchor in JS? | Code: | Для перехода к якорю (anchor) в JavaScript есть несколько способов, от классических до современных с плавной анимацией.1. Самый надежный (совместим с CHM и старым IE)Этот метод просто меняет хеш в адресной строке, и браузер мгновенно перепрыгивает к элементу с соответствующим id или name.javascriptwindow.location.hash = 'myAnchor'; // Перейдет к <a id="myAnchor"> или <a name="myAnchor">
Используйте код с осторожностью.2. С помощью метода scrollIntoView (Современный)Позволяет сделать переход более гибким. Работает в большинстве современных браузеров (Chrome, Firefox, Edge, IE11).javascriptvar element = document.getElementById("myAnchor");
element.scrollIntoView();
Используйте код с осторожностью.Если хотите плавный скролл (не работает в старых IE/CHM):javascriptelement.scrollIntoView({ behavior: 'smooth' });
Используйте код с осторожностью.3. Как сделать это в вашем CHM-проекте?Поскольку мы боремся за совместимость со старым движком IE, лучше всего использовать location.hash.Пример функции для кнопки:html<button onclick="goToSection('part2')">Перейти к разделу 2</button>
<script type="text/javascript">
function goToSection(id) {
var el = document.getElementById(id);
if (el) {
window.location.hash = id;
} else {
alert("Секция не найдена!");
}
}
</script>
<!-- Где-то ниже в коде -->
<h2 id="part2">Раздел 2</h2>
Используйте код с осторожностью.💡 Важные нюансы для CHM:ID vs Name: В совсем древних версиях IE якоря лучше работают через тег <a> с атрибутом name: <a name="myAnchor"></a>.Смещение: Если у вас есть фиксированная шапка (header), переход по якорю может «закинуть» заголовок под нее. В этом случае лучше использовать window.scrollBy(0, -50) после перехода.Нужно ли нам объединить это с вашей функцией скрытия колонок (например, чтобы после скрытия фокус возвращался в начало таблицы)? Пишите, если нужен готовый кусок кода! |
Но у меня через тег <a> с атрибутом name почему-то не сработало. Зато сработало через id. Сначала скрипт
 Hidden text | Code: | <script type="text/javascript">function toggleBlock(e){var l=document.getElementById(e+"-data"),s=document.getElementById(e+"-toggler");"none"==l.style.display?(l.style.display="block",s.className="shown"):(l.style.display="none",s.className="hidden")}</script>
<script type="text/javascript">function toggleColumn(id) {var body = document.body;if (body.className.indexOf('hide-cols') !== -1) {body.className = body.className.replace('hide-cols', '').trim();} else {body.className += ' hide-cols';
var el = document.getElementById(id);
if (el) {
window.location.hash = id;
} else {
alert("Секция не найдена!");
}
} }</script>
|
Два первых ключа
 Hidden text | Code: | <td class="td_key">ButtonBar</td>
<td class="td_file col-hide">Wincmd.ini</td>
<td class="td_section col-hide">Layout</td>
<td class="td_version col-hide">3.00+</td>
<td class="td_default col-hide">1</td>
<td class="td_advanced col-hide">---</td>
<td class="td_description" id="1234"><button onclick="toggleColumn('1234')"><></button><br>Управляет отображением главной (горизонтальной) панели инструментов:<br> 1 (по умолчанию): отображать;<br> 0: скрывать.<br><br><br>ПРИМЕЧАНИЯ:<br><br>Ключи этой подкатегории отвечают за отображение/скрытие компонентов основного окна TC (кроме заголовка, главного меню и файловых панелей), описываемых в порядке следования (сверху вниз), таков же порядок соответствующих опций на странице настроек "Вид окна". (Опции иного предназначения рассматриваются в других подкатегориях.)<br><br>В TC по умолчанию имеются две панели инструментов — главная, горизонтальная (ниже строки главного меню) и вспомогательная, вертикальная (между файловыми панелями). Каждая такая панель содержит некоторое количество кнопок для запуска команд/программ, навигации, открытия в различном виде других панелей инструментов и т.д. В английском интерфейсе TC введено понятие "button bar" (буквально — "панель кнопок"), однако в русском переводе используется более традиционный и употребительный термин.<br><br>Можно скрыть главную панель инструментов, привязав постоянную (загружаемую по умолчанию) панель к файлу no.bar, входящему в дистрибутив TC (см. в подкатегории "Интерфейс программы" — "Панели инструментов" — "Главная панель" ключ Buttonbar из одноимённой секции, лишь по названию совпадающий с ключом ButtonBar в секции [Layout]). Однако механизм скрытия там иной: функция сохранена, а в текущем файле просто нет ничего, что можно отобразить.<br><br><br>ПОЯСНЕНИЯ ПО ТАБЛИЧНОМУ ПРЕДСТАВЛЕНИЮ КЛЮЧЕЙ И СЕКЦИЙ:<br><br>Интерфейс Ultra TC Configuration Editor позволяет получить информацию о ключах и секциях из основных INI-файлов TC с помощью т.н. атрибутов, записанных в файлах данных программы-редактора. Виды атрибутов и их предназначение подробно пояснены в справке Ultra TC Editors. Ключи и секции распределены в файле данных по категориям разной степени вложенности. Корневым в этой структуре, отображаемой в окне Configuration Editor в виде дерева, является элемент "Настройки Total Commander", а все прочие элементы можно считать вложенными категориями (подкатегориями). Ссылки на другие ключи или секции могут даваться в описаниях как с указанием соответствующей цепочки подкатегорий, так и без него. В Configuration Editor для поиска имён, описаний и значений ключей имеется специальный диалог, открываемый в т.ч. клавишами CTRL+F, а при табличном представлении ключей и секций (например, через веб-браузер или плагин HTMLView/MarkdownView) работает стандартный поиск по странице, в т.ч. с помощью тех же клавиш.<br><br>При просмотр файла данных в табличном виде атрибуты отображаются в колонках с заголовками, взятыми из текущего файла style.xsl. Для ключей почти все они (кроме "Description") повторяют в оригинальном англоязычном XSL-файле имена атрибутов из используемых в указанном редакторе подкатегорий для стабильных секций INI-файла с предопределёнными именами ключей. Русскоязычные заголовки колонок добавлены из модифицированного файла style.xsl и означают следующее:<br><br>Ключ — Имя ключа (атрибут "name)".<br><br>Файл — INI-файл TC с ключом (атрибут "file"). Значение — wincmd.ini либо wcx_ftp.ini (или же их аналоги с другими именами — например, при запуске файла totalcmd.exe/totalcmd64.exe с параметрами командной строки /i и/или /f). Перенос (редирект) секций при табличном представлении файлов данных не учитывается, местоположение ключа всегда привязывается к исходному INI-файлу.<br><br>Секция — имя секции, содержащей ключ (атрибут "section"), записанное без квадратных скобок либо как переменная [%Screen_Resolution%] (для загрузки зависящих от разрешения экрана секций, с именем, например, [1024x768 (8x16)]; переменная в таблице не будет заменена актуальным именем секции).<br><br>Версия — информация о том, в какой версии TC появился ключ (атрибут "version"); последующие его модификации (порой весьма радикальные) не учитываются.<br><br>Умолчание — значение ключа по умолчанию (атрибут "default"). Иногда используется условный заменитель значения по умолчанию, а если их несколько, указывается наиболее востребованный вариант.<br><br>Расширенный — информация о том, можно ли задать/изменить значение ключа только через стандартные диалоги и меню TC (атрибут "advanced") или требуется его ручная правка. Значение Yes подразумевает расширенный режим правки, когда все или некоторые значения ключа надо задавать вручную. Прочерк означает, что все до единого значения данного ключа можно задать не вручную, а через интерфейс TC.<br><br>Описание — информация о предназначении ключа, соответствующая не атрибуту, а специальному элементу — редактируемому пользовательскому тексту, сохраняемому в файле данных как содержимое тега "description".<br><br>Несколько меньший набор заголовков используется при описании целых секций, не имеющих постоянного названия и/или не содержащих стабильного набора ключей (это, например, параметры настроенных FTP-соединений, списки подключённых плагинов, содержимое пользовательских меню, используемые шаблоны и т.д.). Первым для секции следует заголовок "Имя", а заголовки "Файл", "Версия" и "Описание" означают примерно то же, что и одноимённые элементы таблиц для ключей.<br><br>Табличные описания целых секций из разных подкатегорий выстраиваются по порядку своего вхождения в файл данных и располагаются отдельно после всех таблиц с ключами. В общих названиях таблиц для секций из-за специфики их обработки отсутствуют имена подкатегорий низшего уровня, непосредственно содержащих наборы ключей. Для каждой такой секции единым текстовыми блоками даны общие описания ключей, которые могут там находиться. Увидеть полную структуру категорий и реальное содержимое текущих INI-файлов TC можно только в интерфейсе Configuration Editor. Происхождением этих таблиц объясняется и то, что в описаниях ключей могут упоминаются некоторые собственные функции Configuration Editor, не имеющие отношения к интерфейсу Total Commander (например, клавиши CTRL+B для открытия из редактора дополнительных диалогов или имеющийся у ряда ключей цветовой индикатор).<br><br>В онлайновом варианте таблиц доступны дополнительные удобства. В частности, вместо последовательного поиска по всей странице клавишами CTRL+F и т.д. можно сразу перейти в нужную подкатегорию, выбрав её в выпадающем списке ключей или секций, открываемом кнопкой с плюсом. Для каждой такой подкатегории в адресной строке браузера после базового адреса таблицы добавляется следом за символом решётки (#) уникальный текстовый идентификатор. Используя такой формат адреса, можно давать (в т.ч. на форумах) ссылки не на справочник в целом, а сразу на нужную его часть. Если в веб-браузере по такой ссылке первоначально открывается (как в Firefox) не искомая подкатегория, а весь справочник, то для правильного перехода следует затем нажать клавишу ENTER в адресной строке браузера.<br><br><br>Значение ключа можно изменить на странице настроек "Вид окна". Аналогичной функциональностью обладает встроенная команда cm_VisButtonBar — обычно с изменением ключа, но если к числовому параметру 0..2 прибавить 4, то эффект будет временным, без изменений в INI-файле.</td>
</tr>
<tr>
<td class="td_key">ButtonBarVertical</td>
<td class="td_file col-hide">Wincmd.ini</td>
<td class="td_section col-hide">Layout</td>
<td class="td_version col-hide">9.00+</td>
<td class="td_default col-hide">1</td>
<td class="td_advanced col-hide">---</td>
<td class="td_description" id="1235"><button onclick="toggleColumn('1235')"><></button><br>Управляет отображением вертикальной панели инструментов:<br> 1 (по умолчанию): отображать;<br> 0: скрывать.<br><br><br>ПРИМЕЧАНИЯ:<br><br>Вертикальная панель инструментов обычно находится между файловыми панелями, а если они расположены одна над другой, то в правой части основного окна TC.<br><br>Можно скрыть вертикальную панель инструментов, привязав постоянную (загружаемую по умолчанию) панель к файлу no.bar, входящему в дистрибутив TC (см. в подкатегории "Интерфейс программы" — "Панели инструментов" — "Вертикальная панель" ключ Buttonbar из секции ButtonbarVertical, лишь по названию совпадающий с ключом ButtonBar в секции [Layout]). Однако механизм скрытия там иной: функция сохранена, а в текущем файле просто нет ничего, что можно отобразить.<br><br><br>Значение ключа можно изменить на странице настроек "Вид окна", а также командой "Скрыть вертикальную панель инструментов" в контекстном меню вертикальной панели или, соответственно, командой "Показать вертикальную панель инструментов" в контекстном меню разделителя файловых панелей. Аналогичной функциональностью обладает встроенная команда cm_VisButtonBar2 — обычно с изменением ключа, но если к числовому параметру 0..2 прибавить 4, то эффект будет временным, без изменений в INI-файле.</td> |
Твою-ж материю! Кажись, работает! Ну, болван... опять сделал мой день
 P.s. Кстати, на инглиш в запросах не обращайте внимание. Это я так с ним играюсь |
|