Console Control

Здесь можно обсудить ваш любимый плагин.
Max Rusov
Posts: 3632
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 1 time
Been thanked: 12 times

Console Control

Post by Max Rusov »

Console Control for FAR 3

Микроплагин для управления размером и шрифтом консольного окна FAR с помощью мыши или клавиатуры.
Krest_kz
Posts: 42
Joined: Sat 22 Sep, 2007 15:28

Console Control

Post by Krest_kz »

Latest post of the previous page:

2useven10 wrote: Если это всё-таки не так, то ConsoleControl-Macros.lua надо положить в %FARPROFILE%\Macros\scripts\
а ConsoleControl.lua в %FARPROFILE%\Macros\modules\
Спасибо помогло
да вот помогло это - запустил на другой машине - развернулось до заданных размеров и ярлык не понадобился
User avatar
John Doe
Бюрократ
Posts: 12897
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 296 times

Console Control

Post by John Doe »

Макрос на AltF9 при максимизации увеличивает и размеры консольного буфера (если он недостаточен для разворачивания окна на весь экран).
Проблема в том, что, что "нарощенная" часть буфера при этом наследует фон интерфейса фара (например панелей).

Чтобы этого не происходило интерфейс стоит предварительно гасить (FCTL_GETUSERSCREEN/FCTL_SETUSERSCREEN)
Желательно усовершенствовать плагин.

Можно конечно и прямо в макрос добавить, но тогда мелькать будет будет при каждом нажатии AltF9, а не только когда это необходимо.
Хотя.. можно попробовать и в макросе угадать:

Code: Select all

local cc = ConsoleControl
Macro { description="Console Control: Maximize/Restore";
  area="Common"; key="AltF9";
  condition=cc.Exist;
  action=function()
    local wW, wH = cc.WindowSize () -- размеры окна
    local bW, bH = cc.BufferSize () -- размеры буфера
    local Max
    if cc.Maximize()==0 and (wW==bW or wH==bH) then
      panel.GetUserScreen()
      Max = cc.Maximize(1)
      mf.waitkey(1)
      panel.SetUserScreen()
    else
      Max = cc.Maximize(-1)
    end
    if Max then
--    ShowHint("Maximize: " .. (Max == 1 and "On" or "Off") )
      ShowHint()
    end
  end;
}
User avatar
John Doe
Бюрократ
Posts: 12897
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 296 times

Console Control

Post by John Doe »

Интересно, что экран всё равно портился, пока я не добавил после Maximize ещё и mf.waitkey(1)
Post Reply

Return to “Обсуждение плагинов”