Обсуждение темы "Обмен кнопками"

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

winkot
Сообщения: 10
Зарегистрирован: Пт фев 07, 2025 10:52

Сообщение winkot »

Batya писал(а):winkot
См. справку по параметру %X.
Где бы ее еще найти? В самом ТС про это не нашел.
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

winkot
На любой кнопке нажать "Изменить". Нажать F1. Прочитать раздел "Параметры".
Нет, я не сплю. Я просто медленно моргаю.
winkot
Сообщения: 10
Зарегистрирован: Пт фев 07, 2025 10:52

Сообщение winkot »

Если применить %O то получим имя файла без расширения. Это понятно. А вот как быть если под курсором имя папки, но в этом имени есть точка. В этом случае имя должно передаваться полностью, включая точку и то, что за ней. Как быть в этом случае?
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

winkot писал(а):Как быть в этом случае?
Например:
1. Не использовать точку в названии папок.
2. Обрабатывать папки отдельно от файлов.
winkot
Сообщения: 10
Зарегистрирован: Пт фев 07, 2025 10:52

Сообщение winkot »

sa
sa писал(а):Обрабатывать папки отдельно от файлов.
Но %S передает все сразу - и папки и файлы. Как же их разделить?
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

winkot
%S передаёт то, что выбрано. Можно выбрать только папки, затем файлы.
winkot
Сообщения: 10
Зарегистрирован: Пт фев 07, 2025 10:52

Сообщение winkot »

Как можно перенести настройки кнопок на другой компьютер?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

winkot
Скопировать BAR-файлы, естественно. У отдельных кнопок можно скопировать в текстовый файл их код. Документация: раз, два, три и так далее.
Даже самая богатая фантазия
Не представит себе наши безобразия.
viktor.
Сообщения: 20
Зарегистрирован: Вт авг 07, 2012 06:57

Нужна кнопка - Добавить текст из буфера в файл под курсором.

Сообщение viktor. »

Столкнулся с такой проблемой, копирую текст в браузере и вставляю его в .txt. Каждый день текст меняется. Копирую новое сообщение, ищу файл, открываю, прокручиваю в конец, ввожу энтер, вставляю текст из буфера. Мрак. Нужна кнопка - Добавить (в конец) текст из буфера обмена в файл под курсором.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

viktor.
Правила форума вам в первую очередь читать нужно (включая то, где размещают запросы на кнопки, если они действительно нужны и реализуемы). Текстовые файлы в TC открываются каким-то определённым внешним текстовым редактором, у которого есть имя и собственная функциональность. Что используете конкретно вы, тут никто не имеет понятия, как и то, возможно ли вообще извне автоматизировать цепочку манипуляции в этом редакторе после его открытия (переход в конец файла, вставка, её подтверждение и, надо полагать, закрытие редактора). Дальше догадаетесь, почему при таких исходных данных заказанная кнопка вам тут вряд ли светит?
Даже самая богатая фантазия
Не представит себе наши безобразия.
viktor.
Сообщения: 20
Зарегистрирован: Вт авг 07, 2012 06:57

Сообщение viktor. »

Ни каких текстовых редакторов не надо. Есть ТС, кнопка (Добавить (в конец) текс...) и текст в буфере обмена, который надо вставить в конец текста файла под курсором. В любой текстовый фал вставить текст из буфера в конец, не открывая редактор.
Выше я описывал монотонность своих действий, которую хочу автоматизировать.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

viktor.
Глупости писать не надо. Вставка текста в заданное место имеющегося текста без редактора или какой-то внешней программы с функциями правки просто не выполняется. Вы сейчас прокрутку и вставку из буфера выполняете в пустом месте или в какой-то программе, где открыт уже имеющийся текст (хотя бы в стандартном Блокноте)?
Все подобные вставки предполагают не абстрактные разговоры, а знание объекта-получателя (вот, например, тема из Автоматизации, где обсуждалась вставка из буфера в конкретное поле одного из диалогов TC).
То, что у вас очень своеобразные представления о некоторых достаточно очевидных вещах, было понятно и из предыдущих ваших сообщений, но меру всё же надо знать.
Даже самая богатая фантазия
Не представит себе наши безобразия.
viktor.
Сообщения: 20
Зарегистрирован: Вт авг 07, 2012 06:57

Сообщение viktor. »

Есть кнопка
%COMMANDER_PATH%\TCIMG.exe
stext=%UL||"%p"//0//"%O"||delim<@CRLF==<info=f13:://>==@CRLF>||upd<3>
Объединить выд. и сохр. (имя под курсором_01.*)


Работает без редактора.
Может возможно перенастроить команду, чтобы первый файл перезаписывался, а буфер выступал в роле второво файла?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

viktor.
Во-первых, у этой утилиты (весьма сложной и многофункциональной) есть несколько специальных форумов поддержки (например, здесь), а наш форум её автор давно перестал посещать. Во-вторых, эта кнопка, мягко говоря, делает не совсем то, чего вы хотите (по крайней мере, насколько вас удаётся понять). В-третьих, кнопки принято приводить в виде кода, а у вас огрызки отдельных полей, непригодные к быстрому тестированию.
Лучше бы вам изложить свои связанные с TCIMG хотелки в другом месте (причём рекомендую сделать это с самого начала более вразумительно, чем вы пытались проделать здесь).
В общем, я переношу эту цепочку в тему запросами на кнопки, а там смотрите, откуда запрашивать помощь.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Monarch-LFV
Сообщения: 360
Зарегистрирован: Пн июл 22, 2019 13:20

Сообщение Monarch-LFV »

viktor.
Можно без текстового редактора добавлять текст в выбранный файл, например посредством VBS-скрипта:
[cut="Clip_To_File.vbs"]

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

' Добавляет в конец файла под курсором текст из буфера обмена
' Параметр: %P%N

On Error Resume Next
txtfile = Wscript.Arguments(0)
Set FSO = CreateObject("Scripting.FileSystemObject")
Text = CreateObject("HTMLFile").parentWindow.clipboardData.getData("Text")
If Text<>"" then
  Set f = FSO.OpenTextFile(txtfile, 8, 1, 0)
    f.Write vbcrlf & Text
  f.Close
Else
	msgbox "В буфере обмена нет текстовой информации"
End if
[/cut]
Ответить