Repository :
https://github.com/FarGroup/FarManager
On branch : master
Link :
https://github.com/FarGroup/FarManager/commit/4a601ccbe0f259fdd3f4aa25de5d9e38b6ab9b3a
>---------------------------------------------------------------
commit 4a601ccbe0f259fdd3f4aa25de5d9e38b6ab9b3a
Author: Shmuel Zeigerman <
solo...@gmail.com>
Date: Mon Jun 8 17:03:13 2026 +0300
LuaFAR: add far.Flavor
>---------------------------------------------------------------
4a601ccbe0f259fdd3f4aa25de5d9e38b6ab9b3a
enc/enc_lua/luafar_manual.tsi | 6 ++++++
plugins/luamacro/_globalinfo.lua | 2 +-
plugins/luamacro/changelog | 4 ++++
plugins/luamacro/luafar/lf_service.c | 1 +
plugins/luamacro/luafar/lf_version.h | 2 +-
plugins/luamacro/macrotest.lua | 6 ++++--
6 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/enc/enc_lua/luafar_manual.tsi b/enc/enc_lua/luafar_manual.tsi
index 4d62b9360..95e594b6d 100644
--- a/enc/enc_lua/luafar_manual.tsi
+++ b/enc/enc_lua/luafar_manual.tsi
@@ -76,6 +76,7 @@ node lv=4 id=587 art=587 nm=ACTL_SETPROGRESSVALUE
node lv=4 id=579 art=579 nm=ACTL_SYNCHRO
node lv=4 id=580 art=580 nm=ACTL_WAITKEY
node lv=3 id=567 art=567 nm=actl namespace
+node lv=2 id=665 art=665 nm=far.Flavor
node lv=2 id=546 art=546 nm=far.FreeScreen
node lv=2 id=53 art=53 nm=far.GetDirList
node lv=2 id=58 art=58 nm=far.GetMsg
@@ -10856,3 +10857,8 @@ article id=664 dt=Text ctime=3983596118 mtime=3983598908 nm=DM_USER
#_{dm_user}: $(ENC_URL)/dialogapi/dmsg/dm_user.html
#_
+article id=665 dt=Text ctime=3990099408 mtime=3990099456 nm=far.Flavor
+#_far.Flavor is a string "far3".
+#_It is intended for use in scripts portable between far3/far2l/far2m.
+#_
+
diff --git a/plugins/luamacro/_globalinfo.lua b/plugins/luamacro/_globalinfo.lua
index 65217a0c8..a03ec304d 100644
--- a/plugins/luamacro/_globalinfo.lua
+++ b/plugins/luamacro/_globalinfo.lua
@@ -1,6 +1,6 @@
function export.GetGlobalInfo()
return {
- Version = { 3, 0, 0, 927 },
+ Version = { 3, 0, 0, 928 },
MinFarVersion = { 3, 0, 0, 6678 },
Guid = win.Uuid("4EBBEFC8-2084-4B7F-94C0-692CE136894D"),
Title = "LuaMacro",
diff --git a/plugins/luamacro/changelog b/plugins/luamacro/changelog
index 876b4596b..cb3558a41 100644
--- a/plugins/luamacro/changelog
+++ b/plugins/luamacro/changelog
@@ -1,3 +1,7 @@
+shmuel 2026-06-08 16:54:06+03:00 - build 928
+
+1. LuaFAR: add far.Flavor (a string "far3"),
+
shmuel 2026-05-25 19:13:12+03:00 - build 927
1. Refactor macro-tests.
diff --git a/plugins/luamacro/luafar/lf_service.c b/plugins/luamacro/luafar/lf_service.c
index 34ecb60e2..3bb884e16 100644
--- a/plugins/luamacro/luafar/lf_service.c
+++ b/plugins/luamacro/luafar/lf_service.c
@@ -6571,6 +6571,7 @@ static int luaopen_far(lua_State *L)
NewVirtualKeyTable(L, FALSE);
lua_setfield(L, LUA_REGISTRYINDEX, FAR_VIRTUALKEYS);
luaL_register(L, "far", far_funcs);
+ PutStrToTable (L, "Flavor", "far3");
luaopen_far_host(L);
lua_setfield(L, -2, "Host");
diff --git a/plugins/luamacro/luafar/lf_version.h b/plugins/luamacro/luafar/lf_version.h
index a71d5b859..cd4212bc3 100644
--- a/plugins/luamacro/luafar/lf_version.h
+++ b/plugins/luamacro/luafar/lf_version.h
@@ -1,3 +1,3 @@
#include <farversion.hpp>
-#define PLUGIN_BUILD 927
+#define PLUGIN_BUILD 928
diff --git a/plugins/luamacro/macrotest.lua b/plugins/luamacro/macrotest.lua
index 78fc25a0b..0e550580c 100644
--- a/plugins/luamacro/macrotest.lua
+++ b/plugins/luamacro/macrotest.lua
@@ -4,14 +4,15 @@
--[[
-- The following macro can be used to run all the tests.
+local MacroKey = "CtrlShiftF12"
Macro {
description="Macro-engine test";
- area="Shell"; key="CtrlShiftF12";
+ area="Shell"; key=MacroKey;
action = function()
Far.DisableHistory(0x0F)
local f = assert(loadfile(far.PluginStartupInfo().ModuleDir.."macrotest.lua"))
local mod = setfenv(f, getfenv())()
- mod.SetMacroKeys("CtrlShiftF12")
+ mod.SetMacroKeys(MacroKey)
mod.test_all()
far.Message("All tests OK", "LuaMacro")
end;
@@ -131,6 +132,7 @@ function MT.test_areas()
asrt.isfalse (Area.Desktop)
end
+-- V = akey(Mode[,Type])
local function test_mf_akey()
CheckMacroKeys()
asrt.eq(akey, mf.akey)