Страница 1 из 1

Определение номера активного набора колонок

Добавлено: Ср июн 12, 2024 21:17
Maxtor
Можно ли в скрипте AHK как-то определить номер (или наименование) пользовательского набора колонок, установленного на панели? В зависимости от того, какой набор колонок включен, будут выполняться разные команды.

Добавлено: Чт июн 13, 2024 09:24
Вахмурка
В TWinKey есть такая функция

Добавлено: Чт июн 13, 2024 10:14
Orion9
Maxtor
А секция [CustomFields] в Wincmd.ini и ключ SpecialView в панелях не подойдет?

Добавлено: Чт июн 13, 2024 10:39
Maxtor
Проблема в том, что Wincmnd.ini нужно поедварительно сохранить, чтобы данные в нем обновились.

Добавлено: Чт июн 13, 2024 12:26
Orion9
Maxtor
Есть команда cm_ConfigSaveSettings, но я не уверен, в какой версии ТС она появилась.

Добавлено: Чт июн 13, 2024 16:23
Avada
Maxtor
Можно. Про скрипты см. здесь описание команд cm_LeftSwitchToThisCustomView и cm_RightSwitchToThisCustomView (для того и вводились). Научитесь пользоваться доступной документацией TC. (Это касается и авторов последующих рекомендаций.)

Вахмурка
В TWinKey нет такой функции. Существующие там визуальные схемы — это более ранний аналог нативных стилей оформления, т.е. привязка чего-то (в т.ч. видов представления, включая наборы колонок, и выполнения команд) к папкам, а не колонок и команд друг к другу.
Другой вопрос, что никто не мешает организовать сцепку команд, где сначала организуется переход к некоему набору (команд для их выбора полно на любой вкус, см. тот же справочник), а затем выполняется ещё какая-то команда, записанная через интерфейс em-команд.

Orion9
Давно появилась. Очень давно. В 4.0. Но задача решается не ключами, а командами, и никакие обновления INI-файла тут абсолютно не нужны.

Добавлено: Чт июн 13, 2024 19:16
Orion9
Avada
Я только недавно стал интересоваться командами, поэтому многого и раньше не знал и сейчас не знаю, в том числе о существовании cm_LeftSwitchToThisCustomView и cm_RightSwitchToThisCustomView. :lol:

Но посмотрев эти команды, разве они не предназначены для переключения к набору по номеру? Автору топика ведь другое нужно, насколько я понял.

Добавлено: Чт июн 13, 2024 22:04
Avada
Orion9
И в самом TC по номеру можно, и в скриптах можно.

Добавлено: Чт июн 13, 2024 22:15
Maxtor
Прошу все же пояснить, как с помощью команд cm_LeftSwitchToThisCustomView и cm_RightSwitchToThisCustomView можно передать в скрипт информацию о текущем наборе колонок, а не выполнить переход к заданному набору.

Добавлено: Пт июн 14, 2024 06:23
Avada
Maxtor
Я практически не пользуюсь AHK-скриптами и не являюсь специалистом по их синтаксису. К.Гислер приводит указанные команды с пояснением, что они для скриптов, и указанием, что lparam=номер набора. Если вам этого недостаточно, поищите пояснения у нас в других темах или на официальном сайте TC.
Но вы правы: это не определение текущего номера набора, а выбор некоего набора с определённым номером. Если я вас ввёл в заблуждение, извините, но другие рекомендации вашу проблему в заявленном виде не решают тоже, предлагая (правильно или неправильно) только обходные пути. Подозреваю, что задача вообще не имеет нужного вам решения, потому что номер текущего набора просто неоткуда брать. Пока текущее состояние файловых панелей TC не сохранено принудительно (что далеко не всегда хорошо и полезно), оно запоминается только в памяти.

Добавлено: Пт июн 14, 2024 11:22
Orion9
Avada писал(а):Подозреваю, что задача вообще не имеет нужного вам решения, потому что номер текущего набора просто неоткуда брать.
Теоретически может получится, если сначала послать из AHK команду сохранения конфигурации, а затем считать значение ключа SpecialView из Wincmd.ini. Но сам я так не делал. :)

Добавлено: Пт июн 14, 2024 13:44
Avada
Orion9
Это понятно, но выше уже сказано, что такие сохранения не всегда хороши.
А вообще по-хорошему надо было бы подробнее расписать задачу, обозначенную в первом посте, чтобы понять, какие именно разные команды предполагается выполнять для разных наборов колонок — и зачем оно надо. Не исключено, что конечной цели можно добиться как-то иначе.

Добавлено: Пт июн 14, 2024 23:55
Orion9
Avada
Ну вообще, хотелось бы узнать, получилось у автора топика достичь поставленной цели или нет. Можно и без подробностей.)

Добавлено: Вс дек 15, 2024 07:17
yahuu

Код: Выделить всё

tcfs2.exe /ef "if(S_viewMode==300,tcm(271),tcm(300))"