风格与Lua风化?

时间:2016-11-24 10:07:24

标签: lua scite

我想设置Scite样式,所以它以任何默认样式启动 - 然后我想通过运行命令将其更改为不同的样式。所以,经过一番挖掘后,我在sciteLuaFunctions.lua中找到了这个脚本,并将其映射到工具菜单中的命令:

  -- http://scite.ruteam.ru/archive/1.59
local function encodeRGB(color)
  if string.sub(color,1,1)=="#" and string.len(color)>6 then
    return tonumber(string.sub(color,6,7)..string.sub(color,4,5)..string.sub(color,2,3), 16)
  else
    return color
  end
end

function ChangeToDarkTheme()
  -- http://www.scintilla.org/PaneAPI.html
  -- http://www.scintilla.org/SciTEFAQ.html " How do I change SciTE to use black as the background colour?"
  -- http://www.scintilla.org/SciTEDoc.html
  -- color calculation works like this:
--~   mycolorRGB = { r = 100, g = 100, b = 100 }                        -- ok
--~   mycolor = (mycolorRGB.r+(mycolorRGB.g*256)+(mycolorRGB.b*65536))  -- ok
  -- but also can use encodeRGB:
  myBackgroundColor = encodeRGB("#282C34")
  editor.StyleBack[32] = myBackgroundColor -- mods background, but where there no text
  editor.StyleBack[33] = myBackgroundColor -- mods background of line numbers
end

然后,当我运行这个命令时,我得到这样的东西:

scite-bckg

问题是:

  • 默认背景仅更改(文本)字符未包含的背景(包括换行符/空行);我也想修改这种背景颜色
    • 编辑:感谢@EgorSkriptunoff的评论,设法得到(通过手动试验值)整个背景(至少在编辑sciteLuaFunctions.lua时,所以对于lua语法着色,还为{ {1}}它的工作原理与此颜色相同:
      cpp
      ...除了,我不知道样式2,4,5,6等在哪里记录,因为它们不在FAQ或者上面代码段中链接的其他文档?!那么某个地方是否有一个数字样式列表,以及它们发生了什么变化?
  • 如果我打开一个新标签,新样式就会消失 - 如果我回到上一个标签,新样式也会消失;我希望样式能够持久,直到通过脚本显式重置,或直到关闭。

是否可以使用Lua脚本实现这些目标,如果是,如何实现?

0 个答案:

没有答案