35 lines
862 B
Go
35 lines
862 B
Go
package main
|
|
|
|
import "github.com/charmbracelet/lipgloss"
|
|
|
|
func (m model) cursorStyle() lipgloss.Style {
|
|
switch m.mode {
|
|
case NormalMode:
|
|
// Block cursor for normal mode
|
|
return lipgloss.NewStyle().Reverse(true)
|
|
case InsertMode:
|
|
// Bar/underline for insert mode
|
|
return lipgloss.NewStyle().Underline(true)
|
|
case CommandMode:
|
|
return lipgloss.NewStyle()
|
|
// case VisualMode:
|
|
// // Colored block for visual mode
|
|
// return lipgloss.NewStyle().
|
|
// Background(lipgloss.Color("62")).
|
|
// Foreground(lipgloss.Color("230"))
|
|
default:
|
|
return lipgloss.NewStyle().Reverse(true)
|
|
}
|
|
}
|
|
|
|
func (m model) gutterStyle(currentLine bool) lipgloss.Style {
|
|
fg := lipgloss.Color("243")
|
|
if currentLine {
|
|
fg = lipgloss.Color("#d69d00")
|
|
}
|
|
return lipgloss.NewStyle().
|
|
Width(m.s_gutter).
|
|
Background(lipgloss.Color("236")).
|
|
Foreground(fg)
|
|
}
|