Add a renderer.font's method "copy" to clone the font object by specifying an optional new size. In the size is not given the size of the original object is used. Should fulfill the request from issue #288.
68 lines
3.0 KiB
Lua
68 lines
3.0 KiB
Lua
local common = require "core.common"
|
|
local style = {}
|
|
|
|
style.padding = { x = common.round(14 * SCALE), y = common.round(7 * SCALE) }
|
|
style.divider_size = common.round(1 * SCALE)
|
|
style.scrollbar_size = common.round(4 * SCALE)
|
|
style.caret_width = common.round(2 * SCALE)
|
|
style.tab_width = common.round(170 * SCALE)
|
|
|
|
-- The function renderer.font.load can accept an option table as a second optional argument.
|
|
-- It shoud be like the following:
|
|
--
|
|
-- {antialiasing= "grayscale", hinting = "full"}
|
|
--
|
|
-- The possible values for each option are:
|
|
-- - for antialiasing: grayscale, subpixel
|
|
-- - for hinting: none, slight, full
|
|
--
|
|
-- The defaults values are antialiasing subpixel and hinting slight for optimal visualization
|
|
-- on ordinary LCD monitor with RGB patterns.
|
|
--
|
|
-- On High DPI monitor or non RGB monitor you may consider using antialiasing grayscale instead.
|
|
-- The antialiasing grayscale with full hinting is interesting for crisp font rendering.
|
|
style.font = renderer.font.load(DATADIR .. "/fonts/FiraSans-Regular.ttf", 13 * SCALE)
|
|
style.big_font = style.font:copy(40 * SCALE)
|
|
style.icon_font = renderer.font.load(DATADIR .. "/fonts/icons.ttf", 14 * SCALE, {antialiasing="grayscale", hinting="full"})
|
|
style.icon_big_font = style.icon_font:copy(20 * SCALE)
|
|
style.code_font = renderer.font.load(DATADIR .. "/fonts/JetBrainsMono-Regular.ttf", 13 * SCALE)
|
|
|
|
style.background = { common.color "#2e2e32" }
|
|
style.background2 = { common.color "#252529" }
|
|
style.background3 = { common.color "#252529" }
|
|
style.text = { common.color "#97979c" }
|
|
style.caret = { common.color "#93DDFA" }
|
|
style.accent = { common.color "#e1e1e6" }
|
|
style.dim = { common.color "#525257" }
|
|
style.divider = { common.color "#202024" }
|
|
style.selection = { common.color "#48484f" }
|
|
style.line_number = { common.color "#525259" }
|
|
style.line_number2 = { common.color "#83838f" }
|
|
style.line_highlight = { common.color "#343438" }
|
|
style.scrollbar = { common.color "#414146" }
|
|
style.scrollbar2 = { common.color "#4b4b52" }
|
|
style.nagbar = { common.color "#FF0000" }
|
|
style.nagbar_text = { common.color "#FFFFFF" }
|
|
style.nagbar_dim = { common.color "rgba(0, 0, 0, 0.45)" }
|
|
|
|
style.syntax = {}
|
|
style.syntax["normal"] = { common.color "#e1e1e6" }
|
|
style.syntax["symbol"] = { common.color "#e1e1e6" }
|
|
style.syntax["comment"] = { common.color "#676b6f" }
|
|
style.syntax["keyword"] = { common.color "#E58AC9" }
|
|
style.syntax["keyword2"] = { common.color "#F77483" }
|
|
style.syntax["number"] = { common.color "#FFA94D" }
|
|
style.syntax["literal"] = { common.color "#FFA94D" }
|
|
style.syntax["string"] = { common.color "#f7c95c" }
|
|
style.syntax["operator"] = { common.color "#93DDFA" }
|
|
style.syntax["function"] = { common.color "#93DDFA" }
|
|
|
|
-- This can be used to override fonts per syntax group.
|
|
-- The syntax highlighter will take existing values from this table and
|
|
-- override style.code_font on a per-token basis, so you can choose to eg.
|
|
-- render comments in an italic font if you want to.
|
|
style.syntax_fonts = {}
|
|
-- style.syntax_fonts["comment"] = renderer.font.load(path_to_font, size_of_font, rendering_options)
|
|
|
|
return style
|