mirror of
https://github.com/zyedidia/micro.git
synced 2026-03-30 14:47:16 +09:00
Don't highlight if syntax is off
This commit is contained in:
@@ -189,7 +189,9 @@ func (b *Buffer) UpdateRules() {
|
|||||||
if b.highlighter == nil || b.Settings["filetype"].(string) != b.syntaxDef.FileType {
|
if b.highlighter == nil || b.Settings["filetype"].(string) != b.syntaxDef.FileType {
|
||||||
b.Settings["filetype"] = b.syntaxDef.FileType
|
b.Settings["filetype"] = b.syntaxDef.FileType
|
||||||
b.highlighter = highlight.NewHighlighter(b.syntaxDef)
|
b.highlighter = highlight.NewHighlighter(b.syntaxDef)
|
||||||
b.highlighter.Highlight(b, 0)
|
if b.Settings["syntax"].(bool) {
|
||||||
|
b.highlighter.Highlight(b, 0)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"time"
|
||||||
|
|
||||||
"github.com/mattn/go-runewidth"
|
"github.com/mattn/go-runewidth"
|
||||||
"github.com/zyedidia/tcell"
|
"github.com/zyedidia/tcell"
|
||||||
)
|
)
|
||||||
@@ -49,18 +51,17 @@ func (c *CellView) Draw(buf *Buffer, top, height, left, width int) {
|
|||||||
indentchar := []rune(buf.Settings["indentchar"].(string))[0]
|
indentchar := []rune(buf.Settings["indentchar"].(string))[0]
|
||||||
|
|
||||||
start := buf.Cursor.Y
|
start := buf.Cursor.Y
|
||||||
// startTime := time.Now()
|
if buf.Settings["syntax"].(bool) {
|
||||||
if start > 0 && buf.lines[start-1].rehighlight {
|
startTime := time.Now()
|
||||||
buf.highlighter.ReHighlightLine(buf, start-1)
|
if start > 0 && buf.lines[start-1].rehighlight {
|
||||||
buf.lines[start-1].rehighlight = false
|
buf.highlighter.ReHighlightLine(buf, start-1)
|
||||||
}
|
buf.lines[start-1].rehighlight = false
|
||||||
|
}
|
||||||
|
|
||||||
buf.highlighter.ReHighlight(buf, start)
|
buf.highlighter.ReHighlight(buf, start)
|
||||||
// elapsed := time.Since(startTime)
|
elapsed := time.Since(startTime)
|
||||||
// for i, m := range matches {
|
messenger.Message("Rehighlighted in ", elapsed)
|
||||||
// buf.matches[start+i] = m
|
}
|
||||||
// }
|
|
||||||
// messenger.Message("Rehighlighted ", len(matches), " lines in ", elapsed)
|
|
||||||
|
|
||||||
c.lines = make([][]*Char, 0)
|
c.lines = make([][]*Char, 0)
|
||||||
|
|
||||||
|
|||||||
@@ -171,7 +171,8 @@ func (v *View) DisplayView() {
|
|||||||
screen.ShowCursor(xOffset+char.visualLoc.X, yOffset+char.visualLoc.Y)
|
screen.ShowCursor(xOffset+char.visualLoc.X, yOffset+char.visualLoc.Y)
|
||||||
}
|
}
|
||||||
|
|
||||||
if v.Buf.Settings["cursorline"].(bool) && tabs[curTab].CurView == v.Num && !v.Cursor.HasSelection() && v.Cursor.Y == realLineN {
|
if v.Buf.Settings["cursorline"].(bool) && tabs[curTab].CurView == v.Num &&
|
||||||
|
!v.Cursor.HasSelection() && v.Cursor.Y == realLineN {
|
||||||
style := GetColor("cursor-line")
|
style := GetColor("cursor-line")
|
||||||
fg, _, _ := style.Decompose()
|
fg, _, _ := style.Decompose()
|
||||||
lineStyle = lineStyle.Background(fg)
|
lineStyle = lineStyle.Background(fg)
|
||||||
@@ -203,7 +204,8 @@ func (v *View) DisplayView() {
|
|||||||
lastX = xOffset
|
lastX = xOffset
|
||||||
}
|
}
|
||||||
|
|
||||||
if v.Buf.Settings["cursorline"].(bool) && tabs[curTab].CurView == v.Num && !v.Cursor.HasSelection() && v.Cursor.Y == realLineN {
|
if v.Buf.Settings["cursorline"].(bool) && tabs[curTab].CurView == v.Num &&
|
||||||
|
!v.Cursor.HasSelection() && v.Cursor.Y == realLineN {
|
||||||
for i := lastX; i < xOffset+v.Width; i++ {
|
for i := lastX; i < xOffset+v.Width; i++ {
|
||||||
style := GetColor("cursor-line")
|
style := GetColor("cursor-line")
|
||||||
fg, _, _ := style.Decompose()
|
fg, _, _ := style.Decompose()
|
||||||
|
|||||||
Reference in New Issue
Block a user