mirror of
https://github.com/zyedidia/micro.git
synced 2026-02-06 15:10:27 +09:00
Merge pull request #416 from jncraton/duplicate-selection
DuplicateLine duplicates current selection if there is text selected
This commit is contained in:
@@ -922,15 +922,20 @@ func (v *View) Cut(usePlugin bool) bool {
|
||||
return false
|
||||
}
|
||||
|
||||
// DuplicateLine duplicates the current line
|
||||
// DuplicateLine duplicates the current line or selection
|
||||
func (v *View) DuplicateLine(usePlugin bool) bool {
|
||||
if usePlugin && !PreActionCall("DuplicateLine", v) {
|
||||
return false
|
||||
}
|
||||
|
||||
v.Cursor.End()
|
||||
v.Buf.Insert(v.Cursor.Loc, "\n"+v.Buf.Line(v.Cursor.Y))
|
||||
v.Cursor.Right()
|
||||
if v.Cursor.HasSelection() {
|
||||
v.Buf.Insert(v.Cursor.CurSelection[1], v.Cursor.GetSelection())
|
||||
} else {
|
||||
v.Cursor.End()
|
||||
v.Buf.Insert(v.Cursor.Loc, "\n"+v.Buf.Line(v.Cursor.Y))
|
||||
v.Cursor.Right()
|
||||
}
|
||||
|
||||
messenger.Message("Duplicated line")
|
||||
|
||||
if usePlugin {
|
||||
|
||||
Reference in New Issue
Block a user