ธีม Neovim ที่มืดและสว่างที่เขียนด้วยภาษา Lua ซึ่งย้ายมาจากธีม Visual Studio Code TokyoNight รวมธีมพิเศษสำหรับ Kitty, Alacritty, iTerm และ Fish
ดวงจันทร์ | พายุ |
---|---|
กลางคืน | วัน |
ปลั๊กอิน | แหล่งที่มา |
---|---|
ทางอากาศ.nvim | aerial |
เบียร์ | ale |
อัลฟา-nvim | alpha |
barbar.nvim | barbar |
กะพริบตา.cmp | blink |
bufferline.nvim | bufferline |
nvim-cmp | cmp |
โคเดียม.nvim | codeium |
นักบิน.lua | copilot |
nvim-dap | dap |
แดชบอร์ด-nvim | dashboard |
แฟลช.nvim | flash |
fzf-lua | fzf |
เป็นกลุ่ม-gitgutter | gitgutter |
gitsigns.nvim | gitsigns |
glyph-palette.vim | glyph-palette |
grug-far.nvim | grug-far |
พาดหัวข่าว.nvim | headlines |
hop.nvim | hop |
เป็นกลุ่มส่องสว่าง | illuminate |
เยื้อง-blankline.nvim | indent-blankline |
เยื้อง mini.nvim | indentmini |
ขี้เกียจ.nvim | lazy |
กระโดด.nvim | leap |
lspsaga.nvim | lspsaga |
มินิภาพเคลื่อนไหว | mini_animate |
มินิเบาะแส | mini_clue |
mini.เสร็จสิ้น | mini_completion |
mini.เคอร์เซอร์เวิร์ด | mini_cursorword |
mini.deps | mini_deps |
mini.diff | mini_diff |
mini.files | mini_files |
mini.hiรูปแบบ | mini_hipatterns |
มินิ.ไอคอน | mini_icons |
mini.เยื้องสโคป | mini_indentscope |
มินิกระโดด | mini_jump |
มินิแผนที่ | mini_map |
mini.แจ้งเตือน | mini_notify |
mini.ตัวดำเนินการ | mini_operators |
มินิ.เลือก | mini_pick |
มินิสตาร์ทเตอร์ | mini_starter |
mini.statusline | mini_statusline |
มินิ.เซอร์ราวด์ | mini_surround |
mini.ตาราง | mini_tabline |
มินิ.ทดสอบ | mini_test |
mini.trailspace | mini_trailspace |
nvim-navic | navic |
neo-tree.nvim | neo-tree |
นีโอกิต | neogit |
นีโอเทส | neotest |
noice.nvim | noice |
nvim-แจ้งเตือน | notify |
nvim-tree.lua | nvim-tree |
octo.nvim | octo |
สายรุ้งตัวคั่น.nvim | rainbow |
แสดงผล-markdown.nvim | render-markdown |
nvim-แถบเลื่อน | scrollbar |
ของขบเคี้ยว.nvim | snacks |
เป็นกลุ่มแอบ | sneak |
supermaven-nvim | supermaven |
กล้องโทรทรรศน์.nvim | telescope |
nvim-treesitter-บริบท | treesitter-context |
Trouble.nvim | trouble |
วิมวิกิ | vimwiki |
ซึ่ง-key.nvim | which-key |
yanky.nvim | yanky |
เครื่องมือ | พิเศษ |
---|---|
แอร์ค | พิเศษ/arc |
อลาคริตตี | ความพิเศษ/ความอลังการ |
เดลต้า | พิเศษ/เดลต้า |
ดันสท์ | ความพิเศษ/dunst |
ปลา | อาหารเสริม/ปลา |
ธีมปลา | ความพิเศษ/fish_themes |
เท้า | อุปกรณ์เสริม/เท้า |
ฟัซเซล | ความพิเศษ/ฝอย |
ฟซฟ | บริการพิเศษ/fzf |
ผี | ความพิเศษ/ผี |
GitUI | ความพิเศษ/gitui |
เทอร์มินัล GNOME | ความพิเศษ/gnome_terminal |
ส่วนที่เป็นเกลียว | พิเศษ / ส่วนที่เป็นเกลียว |
iTerm | พิเศษ/รายการ |
คิตตี้ | อุปกรณ์เสริม/คิตตี้ |
ลาซิกิต | ความพิเศษ/lazygit |
ตารางลัวะสำหรับการทดสอบ | พิเศษ/lua |
ปริซึม | พิเศษ/ปริซึม |
กระบวนการเขียน | ความพิเศษ/process_compose |
หย่อน | พิเศษ / หย่อน |
เครื่องเล่น Spotify | ความพิเศษ/spotify_player |
ข้อความประเสริฐ | ความพิเศษ / ประเสริฐ |
เทอร์มิเนเตอร์ | ความพิเศษ/เทอร์มิเนเตอร์ |
เทอร์แม็กซ์ | บริการพิเศษ/termux |
ทิลิกซ์ | บริการพิเศษ/tilix |
ทีมิกซ์ | พิเศษ / tmux |
เป็นกลุ่ม | พิเศษ / กลุ่ม |
ไวเมียม | พิเศษ/พรีเมี่ยม |
เวซเทอม | ความพิเศษ/wezterm |
เทอร์มินัลวินโดวส์ | ความพิเศษ/windows_terminal |
เทอร์มินัล Xfce | พิเศษ/xfceterm |
Xresources | ความพิเศษ/xresources |
ยาซี | บริการพิเศษ/ยาซี |
ซาทูรา | อุปกรณ์พิเศษ/ซาทูรา |
เซลลิจ | พิเศษ/zellij |
ติดตั้งธีมด้วยตัวจัดการแพ็คเกจที่คุณต้องการ เช่น folke/lazy.nvim:
{
" folke/tokyonight.nvim " ,
lazy = false ,
priority = 1000 ,
opts = {},
}
vim . cmd [[ colorscheme tokyonight ]]
colorscheme tokyonight
" There are also colorschemes for the different styles.
colorscheme tokyonight - night
colorscheme tokyonight - storm
colorscheme tokyonight - day
colorscheme tokyonight - moon
ปลั๊กอินบางตัวจำเป็นต้องมีการกำหนดค่าเพิ่มเติมเพื่อทำงานกับ TokyoNight
-- Lua
require ( ' barbecue ' ). setup {
-- ... your barbecue config
theme = ' tokyonight ' ,
-- ... your barbecue config
}
-- Lua
require ( ' lualine ' ). setup {
options = {
-- ... your lualine config
theme = ' tokyonight '
-- ... your lualine config
}
}
" Vim Script
let g: lightline = { ' colorscheme ' : ' tokyonight ' }
สำคัญ
ตั้งค่าคอนฟิกูเรชัน ก่อน โหลดชุดสีด้วย colorscheme tokyonight
ธีมมีสี่สไตล์: พายุ ดวงจันทร์ กลางคืน และกลางวัน
สไตล์วันถูกใช้เมื่อ { style = "day" }
ถูกส่งผ่านไปยัง setup(options)
หรือเมื่อ vim.o.background = "light"
TokyoNight ใช้ตัวเลือกเริ่มต้น เว้นแต่จะมีการเรียก setup
อย่างชัดเจน
--- @class tokyonight.Config
--- @field on_colors fun ( colors : ColorScheme )
--- @field on_highlights fun ( highlights : tokyonight.Highlights , colors : ColorScheme )
M . defaults = {
style = " moon " , -- The theme comes in three styles, `storm`, a darker variant `night` and `day`
light_style = " day " , -- The theme is used when the background is set to light
transparent = false , -- Enable this to disable setting the background color
terminal_colors = true , -- Configure the colors used when opening a `:terminal` in Neovim
styles = {
-- Style to be applied to different syntax groups
-- Value is any valid attr-list value for `:help nvim_set_hl`
comments = { italic = true },
keywords = { italic = true },
functions = {},
variables = {},
-- Background styles. Can be "dark", "transparent" or "normal"
sidebars = " dark " , -- style for sidebars, see below
floats = " dark " , -- style for floating windows
},
day_brightness = 0.3 , -- Adjusts the brightness of the colors of the **Day** style. Number between 0 and 1, from dull to vibrant colors
dim_inactive = false , -- dims inactive windows
lualine_bold = false , -- When `true`, section headers in the lualine theme will be bold
--- You can override specific color groups to use other groups or a hex color
--- function will be called with a ColorScheme table
--- @param colors ColorScheme
on_colors = function ( colors ) end ,
--- You can override specific highlights to use other groups or a hex color
--- function will be called with a Highlights and ColorScheme table
--- @param highlights tokyonight.Highlights
--- @param colors ColorScheme
on_highlights = function ( highlights , colors ) end ,
cache = true , -- When set to true, the theme will be cached for better performance
--- @type table<string , boolean |{ enabled : boolean } >
plugins = {
-- enable all plugins when not using lazy.nvim
-- set to false to manually enable/disable plugins
all = package.loaded . lazy == nil ,
-- uses your plugin manager to automatically enable needed plugins
-- currently only lazy.nvim is supported
auto = true ,
-- add any plugins here that you want to enable
-- for all possible plugins, see:
-- * https://github.com/folke/tokyonight.nvim/tree/main/lua/tokyonight/groups
-- telescope = true,
},
}
วิธีคำนวณกลุ่มไฮไลต์:
colors
จะถูกกำหนดตามการกำหนดค่าของคุณ โดยมีความสามารถในการแทนที่สีเหล่านั้นโดยใช้ config.on_colors(colors)
colors
เหล่านี้ใช้เพื่อสร้างกลุ่มไฮไลต์config.on_highlights(highlights, colors)
สามารถใช้เพื่อแทนที่กลุ่มไฮไลต์ได้ สำหรับค่าเริ่มต้นของ colors
และ highlights
โปรดดูธีมพายุ ดวงจันทร์ กลางคืน และกลางวัน
require ( " tokyonight " ). setup ({
-- use the night style
style = " night " ,
-- disable italic for functions
styles = {
functions = {}
},
-- Change the "hint" color to the "orange" color, and make the "error" color bright red
on_colors = function ( colors )
colors . hint = colors . orange
colors . error = " #ff0000 "
end
})
require ( " tokyonight " ). setup ({
on_highlights = function ( hl , c )
local prompt = " #2d3149 "
hl . TelescopeNormal = {
bg = c . bg_dark ,
fg = c . fg_dark ,
}
hl . TelescopeBorder = {
bg = c . bg_dark ,
fg = c . bg_dark ,
}
hl . TelescopePromptNormal = {
bg = prompt ,
}
hl . TelescopePromptBorder = {
bg = prompt ,
fg = prompt ,
}
hl . TelescopePromptTitle = {
bg = prompt ,
fg = prompt ,
}
hl . TelescopePreviewTitle = {
bg = c . bg_dark ,
fg = c . bg_dark ,
}
hl . TelescopeResultsTitle = {
bg = c . bg_dark ,
fg = c . bg_dark ,
}
end ,
})
undercurls
ใน Tmuxหากต้องการให้อันเดอร์เคอร์เซอร์แสดงและเป็นสี ให้เพิ่มสิ่งต่อไปนี้ในไฟล์คอนฟิกูเรชัน Tmux ของคุณ:
# Undercurl
set -g default-terminal " ${TERM} "
set -as terminal-overrides ' ,*:Smulx=E[4::%p1%dm ' # undercurl support
set -as terminal-overrides ' ,*:Setulc=E[58::2::::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m ' # underscore colours - needs tmux-3.0
การกำหนดค่าสีพิเศษสำหรับ Kitty, Alacritty, Fish, WezTerm, iTerm และ foot สามารถพบได้ในส่วนพิเศษ หากต้องการใช้งาน โปรดดูเอกสารประกอบที่เกี่ยวข้อง
คุณสามารถใช้จานสีสำหรับปลั๊กอินอื่นๆ ภายในการกำหนดค่า Neovim ของคุณได้อย่างง่ายดาย:
local colors = require ( " tokyonight.colors " ). setup () -- pass in any of the config options as explained above
local util = require ( " tokyonight.util " )
aplugin . background = colors . bg_dark
aplugin . my_error = util . lighten ( colors . red1 , 0.3 ) -- number between 0 and 1. 0 results in white, 1 results in red1
ยินดีต้อนรับคำขอดึง
สำหรับคุณสมบัติพิเศษ เราใช้ระบบเทมเพลตธรรมดาที่สามารถใช้สร้างธีมสำหรับสไตล์ที่แตกต่างกันได้
วิธีเพิ่มเทมเพลตพิเศษใหม่:
สร้างไฟล์เช่น lua/tokyonight/extra/cool-app.lua
เพิ่มชื่อและนามสกุลไฟล์เอาต์พุตลงในตาราง extras
ใน lua/tokyonight/extra/init.lua
รันคำสั่งต่อไปนี้เพื่อสร้างธีมพิเศษใหม่จากไดเร็กทอรีปลั๊กอิน tokyonight:
./scripts/build
ตรวจสอบธีมที่สร้างขึ้นใหม่ในไดเรกทอรี extra/
โปรด อย่า คอมมิตพวกมัน เนื่องจาก CI สร้างขึ้นโดยอัตโนมัติแล้ว