Раскопировать файл(ы) по каталогам

Столкнулись с проблемой в использовании Far? Здесь можно получить помощь.
User avatar
John Doe
Бюрократ
Posts: 13860
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Раскопировать файл(ы) по каталогам

Post by John Doe »

Latest post of the previous page:

Shmuel wrote: Ну так сказано же было сразу - написать макрос. При этом и буфер засорять бы не потребовалось.
С буфером проще для новичка. А засорять не придётся, если задействовать "внутренний" буфер.
User avatar
Wave
Posts: 1887
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 14 times
Been thanked: 26 times

Раскопировать файл(ы) по каталогам

Post by Wave »

John Doe wrote:
Wave wrote: HaRT, ничо не знаю, свой первый совет я попробовал на практике — у меня работает именно так, как я описал.
Банить за плохие советы надо
Хозяин — барин. Ты модератор. Хочешь — бань.
Пользуюсь ФАРом больше 20 лет © собирательный.
User avatar
Wave
Posts: 1887
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 14 times
Been thanked: 26 times

Раскопировать файл(ы) по каталогам

Post by Wave »

P.s. Разве что ещё может быть дело в том, что у меня ConEmu. Эта штука добавляет ФАРу много удобных вещей.
Пользуюсь ФАРом больше 20 лет © собирательный.
User avatar
John Doe
Бюрократ
Posts: 13860
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Раскопировать файл(ы) по каталогам

Post by John Doe »

У вас видимо действует макрос, подобный этому:

Code: Select all

local CopyFilesId = "FCEF11C4-5490-451D-8B4A-62FA03F52759"
Macro {
  area="Dialog"; key="ShiftIns";
  uid="D102CDBB-22D8-4E04-9760-A90305E6BCBA";
  condition=function()
    return Dlg.Id==CopyFilesId and far.PasteFromClipboard():find"\n"
  end;
  action=function()
    mf.print(far.PasteFromClipboard():gsub("\r\n",";"))
  end;
}
sva
Posts: 8
Joined: Thu 02 Apr, 2015 09:02

Раскопировать файл(ы) по каталогам

Post by sva »

John Doe wrote:
HaRT wrote: Наверняка же средствами Lua+FAR можно взять строку из буфера обмена в переменную, там заменить все переводы строк на запятые, а уже после этого вставить в качестве пути назначения.
Верно.
Значит Shift+Ins надо заменить на mf.print(far.PasteFromClipboard():gsub("\r\n",";"))
Так где это меняется ?
User avatar
John Doe
Бюрократ
Posts: 13860
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Раскопировать файл(ы) по каталогам

Post by John Doe »

Достаточно установить вышеприведённый макрос, и можно использовать последовательность действий, предложенную Wave на прошлой странице.

P.S.
Всю последовательность действий тоже можно превратить в макрос, но это уже как-нибудь сами.
sva
Posts: 8
Joined: Thu 02 Apr, 2015 09:02

Раскопировать файл(ы) по каталогам

Post by sva »

Сделал это через меню (F2)
вот строчка:

Code: Select all

FOR /F "tokens=*" %I IN (!#!@F!) DO COPY !?Копируем этот файл по отмеченным каталогам в пассивной панели?("!^!=\!^!.!")! %I
В пассивной панеле отмечаем каталоги, в активной наводим курсор на файл, нажимаем F2, подтверждаем файл, и он копируется в цикле.
А как можно из меню сделать действия? допустим мне надо чтобы в пассивной (можно во всех) панели было снято всё выделение ?
Допустим макрос нажатия GREY-, Enter. Так они обязательно на клавиши вешаются же.
Shmuel
Posts: 6839
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Раскопировать файл(ы) по каталогам

Post by Shmuel »

sva wrote: Так они обязательно на клавиши вешаются же.
lua: Keys("Subtract Enter")
sva
Posts: 8
Joined: Thu 02 Apr, 2015 09:02

Раскопировать файл(ы) по каталогам

Post by sva »

Shmuel wrote:
sva wrote: Так они обязательно на клавиши вешаются же.
lua: Keys("Subtract Enter")
спасибо. в моём случае это lua: Keys("Subtract Enter Tab Subtract Enter Tab"). а где можно почитать про параметры Keys и прочее?
Shmuel
Posts: 6839
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Раскопировать файл(ы) по каталогам

Post by Shmuel »

Читайте в папке Encyclopedia, смотрите примеры на форуме в разделе макросов.
Post Reply

Return to “Нужна помощь”