More style improvements

This commit is contained in:
Zachary Yedidia 2021-08-21 18:04:08 -04:00
parent c44ccb8cc7
commit 3a97ce820c
7 changed files with 31 additions and 27 deletions

View File

@ -34,8 +34,8 @@ func (h *BufPane) ScrollDown(n int) {
h.SetView(v)
}
// If the user has scrolled past the last line, ScrollAdjust can be used
// to shift the view so that the last line is at the bottom
// ScrollAdjust can be used to shift the view so that the last line is at the
// bottom if the user has scrolled past the last line.
func (h *BufPane) ScrollAdjust() {
v := h.GetView()
end := h.SLocFromLoc(h.Buf.End())
@ -1025,16 +1025,16 @@ func (h *BufPane) Copy() bool {
return true
}
// Copy the current line to the clipboard
// CopyLine copies the current line to the clipboard
func (h *BufPane) CopyLine() bool {
if h.Cursor.HasSelection() {
return false
} else {
h.Cursor.SelectLine()
h.Cursor.CopySelection(clipboard.ClipboardReg)
h.freshClip = true
InfoBar.Message("Copied line")
}
h.Cursor.SelectLine()
h.Cursor.CopySelection(clipboard.ClipboardReg)
h.freshClip = true
InfoBar.Message("Copied line")
h.Cursor.Deselect(true)
h.Relocate()
return true
@ -1077,9 +1077,8 @@ func (h *BufPane) Cut() bool {
h.Relocate()
return true
} else {
return h.CutLine()
}
return h.CutLine()
}
// DuplicateLine duplicates the current line or selection
@ -1638,12 +1637,12 @@ func (h *BufPane) PreviousSplit() bool {
}
var curmacro []interface{}
var recording_macro bool
var recordingMacro bool
// ToggleMacro toggles recording of a macro
func (h *BufPane) ToggleMacro() bool {
recording_macro = !recording_macro
if recording_macro {
recordingMacro = !recordingMacro
if recordingMacro {
curmacro = []interface{}{}
InfoBar.Message("Recording")
} else {
@ -1655,7 +1654,7 @@ func (h *BufPane) ToggleMacro() bool {
// PlayMacro plays back the most recently recorded macro
func (h *BufPane) PlayMacro() bool {
if recording_macro {
if recordingMacro {
return false
}
for _, action := range curmacro {
@ -1715,10 +1714,9 @@ func (h *BufPane) SpawnMultiCursor() bool {
func (h *BufPane) SpawnMultiCursorUp() bool {
if h.Cursor.Y == 0 {
return false
} else {
h.Cursor.GotoLoc(buffer.Loc{h.Cursor.X, h.Cursor.Y - 1})
h.Cursor.Relocate()
}
h.Cursor.GotoLoc(buffer.Loc{h.Cursor.X, h.Cursor.Y - 1})
h.Cursor.Relocate()
c := buffer.NewCursor(h.Buf, buffer.Loc{h.Cursor.X, h.Cursor.Y + 1})
h.Buf.AddCursor(c)
@ -1733,10 +1731,9 @@ func (h *BufPane) SpawnMultiCursorUp() bool {
func (h *BufPane) SpawnMultiCursorDown() bool {
if h.Cursor.Y+1 == h.Buf.LinesNum() {
return false
} else {
h.Cursor.GotoLoc(buffer.Loc{h.Cursor.X, h.Cursor.Y + 1})
h.Cursor.Relocate()
}
h.Cursor.GotoLoc(buffer.Loc{h.Cursor.X, h.Cursor.Y + 1})
h.Cursor.Relocate()
c := buffer.NewCursor(h.Buf, buffer.Loc{h.Cursor.X, h.Cursor.Y - 1})
h.Buf.AddCursor(c)

View File

@ -470,7 +470,7 @@ func (h *BufPane) execAction(action func(*BufPane) bool, name string, cursor int
success = success && h.PluginCB("on"+name)
if isMulti {
if recording_macro {
if recordingMacro {
if name != "ToggleMacro" && name != "PlayMacro" {
curmacro = append(curmacro, action)
}
@ -542,7 +542,7 @@ func (h *BufPane) DoRuneInsert(r rune) {
} else {
h.Buf.Insert(c.Loc, string(r))
}
if recording_macro {
if recordingMacro {
curmacro = append(curmacro, r)
}
h.Relocate()

View File

@ -229,7 +229,7 @@ func (k *KeyTree) ResetEvents() {
k.cursor.mouseInfo = nil
}
// CurrentEventsStr returns the list of recorded events as a string
// RecordedEventsStr returns the list of recorded events as a string
func (k *KeyTree) RecordedEventsStr() string {
buf := &bytes.Buffer{}
for _, e := range k.cursor.recordedEvents {

View File

@ -4,6 +4,7 @@ import (
"github.com/zyedidia/micro/v2/internal/display"
)
// A Pane is a general interface for a window in the editor.
type Pane interface {
Handler
display.Window

View File

@ -9,10 +9,10 @@ import (
"github.com/zyedidia/tcell/v2"
)
// Micro's default style
// DefStyle is Micro's default style
var DefStyle tcell.Style = tcell.StyleDefault
// The current colorscheme
// Colorscheme is the current colorscheme
var Colorscheme map[string]tcell.Style
// GetColor takes in a syntax group and returns the colorscheme's style for that group

View File

@ -11,8 +11,7 @@ import (
"github.com/zyedidia/tcell/v2"
)
// The BufWindow provides a way of displaying a certain section
// of a buffer
// The BufWindow provides a way of displaying a certain section of a buffer.
type BufWindow struct {
*View
@ -44,6 +43,7 @@ func NewBufWindow(x, y, width, height int, buf *buffer.Buffer) *BufWindow {
return w
}
// SetBuffer sets this window's buffer.
func (w *BufWindow) SetBuffer(b *buffer.Buffer) {
w.Buf = b
b.OptionCallback = func(option string, nativeValue interface{}) {
@ -65,14 +65,17 @@ func (w *BufWindow) SetBuffer(b *buffer.Buffer) {
}
}
// GetView gets the view.
func (w *BufWindow) GetView() *View {
return w.View
}
// GetView sets the view.
func (w *BufWindow) SetView(view *View) {
w.View = view
}
// Resize resizes this window.
func (w *BufWindow) Resize(width, height int) {
w.Width, w.Height = width, height
w.updateDisplayInfo()
@ -86,10 +89,12 @@ func (w *BufWindow) Resize(width, height int) {
}
}
// SetActive marks the window as active.
func (w *BufWindow) SetActive(b bool) {
w.active = b
}
// IsActive returns true if this window is active.
func (w *BufWindow) IsActive() bool {
return w.active
}

View File

@ -67,6 +67,7 @@ func combineLineMatch(src, dst LineMatch) LineMatch {
// A State represents the region at the end of a line
type State *region
// EmptyDef is an empty definition.
var EmptyDef = Def{nil, &rules{}}
// LineStates is an interface for a buffer-like object which can also store the states and matches for every line