mirror of
https://github.com/zyedidia/micro.git
synced 2026-03-21 00:07:16 +09:00
Add diff gutter
This commit is contained in:
@@ -16,6 +16,9 @@ color-link tabbar "#1D1F21,#C5C8C6"
|
||||
color-link indent-char "#505050,#1D1F21"
|
||||
color-link line-number "#656866,#232526"
|
||||
color-link current-line-number "#656866,#1D1F21"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#FF4444,#1D1F21"
|
||||
color-link gutter-warning "#EEEE77,#1D1F21"
|
||||
color-link cursor-line "#2D2F31"
|
||||
|
||||
@@ -14,6 +14,9 @@ color-link underlined "underline 241,231"
|
||||
color-link todo "246,231"
|
||||
color-link statusline "241,254"
|
||||
color-link tabbar "241,254"
|
||||
color-link diff-added "34"
|
||||
color-link diff-modified "214"
|
||||
color-link diff-deleted "160"
|
||||
color-link gutter-error "197,231"
|
||||
color-link gutter-warning "134,231"
|
||||
color-link line-number "246,254"
|
||||
|
||||
@@ -33,6 +33,9 @@ color-link statusline "white,blue"
|
||||
color-link tabbar "white,blue"
|
||||
color-link current-line-number "red"
|
||||
color-link current-line-number.scroller "red"
|
||||
color-link diff-added "green"
|
||||
color-link diff-modified "yellow"
|
||||
color-link diff-deleted "red"
|
||||
color-link gutter-error ",red"
|
||||
color-link gutter-warning "red"
|
||||
color-link color-column "cyan"
|
||||
|
||||
@@ -28,9 +28,12 @@ color-link statusline "#aaaaaa,#8a496b"
|
||||
color-link tabbar "#aaaaaa,#8a496b"
|
||||
color-link current-line-number "bold #e34234,#424549"
|
||||
color-link current-line-number.scroller "red"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error ",#e34234"
|
||||
color-link gutter-warning "#e34234"
|
||||
color-link color-column "#f26522"
|
||||
color-link constant.bool "bold #55ffff"
|
||||
color-link constant.bool.true "bold #85ff85"
|
||||
color-link constant.bool.false "bold #ff8585"
|
||||
color-link constant.bool.false "bold #ff8585"
|
||||
|
||||
@@ -17,6 +17,9 @@ color-link tabbar "#242424,#CCCCCC"
|
||||
color-link indent-char "#4F4F4F,#242424"
|
||||
color-link line-number "#666666,#2C2C2C"
|
||||
color-link current-line-number "#666666,#242424"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#CB4B16,#242424"
|
||||
color-link gutter-warning "#E6DB74,#242424"
|
||||
color-link cursor-line "#2C2C2C"
|
||||
|
||||
@@ -17,6 +17,9 @@ color-link tabbar "#282828,#F8F8F2"
|
||||
color-link indent-char "#505050,#282828"
|
||||
color-link line-number "#AAAAAA,#323232"
|
||||
color-link current-line-number "#AAAAAA,#282828"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#CB4B16,#282828"
|
||||
color-link gutter-warning "#E6DB74,#282828"
|
||||
color-link cursor-line "#323232"
|
||||
|
||||
@@ -18,5 +18,8 @@ color-link current-line-number ""
|
||||
color-link statusline "black,white"
|
||||
color-link tabbar "black,white"
|
||||
color-link color-column "bold geren"
|
||||
color-link diff-added "green"
|
||||
color-link diff-modified "yellow"
|
||||
color-link diff-deleted "red"
|
||||
color-link gutter-error ",red"
|
||||
color-link gutter-warning "red"
|
||||
|
||||
@@ -15,6 +15,9 @@ color-link statusline "#091F2E,#599CAB"
|
||||
color-link indent-char "#505050,#0C1014"
|
||||
color-link line-number "#245361,#11151C"
|
||||
color-link current-line-number "#599CAB,#11151C"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#C23127,#11151C"
|
||||
color-link gutter-warning "#EDB443,#11151C"
|
||||
color-link cursor-line "#091F2E"
|
||||
|
||||
@@ -11,6 +11,9 @@ color-link type "#fb4934,#282828"
|
||||
color-link special "#d79921,#282828"
|
||||
color-link underlined "underline #282828"
|
||||
color-link error "#9d0006,#282828"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#fb4934,#282828"
|
||||
color-link gutter-warning "#d79921,#282828"
|
||||
color-link line-number "#665c54,#3c3836"
|
||||
|
||||
@@ -11,6 +11,9 @@ color-link special "172,235"
|
||||
color-link underlined "underline 109,235"
|
||||
color-link error "235,124"
|
||||
color-link todo "bold 223,235"
|
||||
color-link diff-added "34"
|
||||
color-link diff-modified "214"
|
||||
color-link diff-deleted "160"
|
||||
color-link line-number "243,237"
|
||||
color-link current-line-number "172,235"
|
||||
color-link cursor-line "237"
|
||||
|
||||
@@ -7,6 +7,9 @@ color-link constant.string "#C3E88D,#263238"
|
||||
color-link current-line-number "#80DEEA,#263238"
|
||||
color-link cursor-line "#283942"
|
||||
color-link default "#EEFFFF,#263238"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link divider "#263238,#80DEEA"
|
||||
color-link error "bold #263238,#F07178"
|
||||
color-link gutter-error "#EEFFFF,#F07178"
|
||||
|
||||
@@ -15,6 +15,9 @@ color-link statusline "#282828,#F8F8F2"
|
||||
color-link indent-char "#505050,#282828"
|
||||
color-link line-number "#AAAAAA,#282828"
|
||||
color-link current-line-number "#AAAAAA,#1D0000"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#CB4B16"
|
||||
color-link gutter-warning "#E6DB74"
|
||||
color-link cursor-line "#323232"
|
||||
|
||||
@@ -17,6 +17,9 @@ color-link tabbar "#282828,#F8F8F2"
|
||||
color-link indent-char "#505050,#282828"
|
||||
color-link line-number "#AAAAAA,#323232"
|
||||
color-link current-line-number "#AAAAAA,#282828"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#CB4B16,#282828"
|
||||
color-link gutter-warning "#E6DB74,#282828"
|
||||
color-link cursor-line "#323232"
|
||||
|
||||
@@ -10,6 +10,9 @@ color-link current-line-number "#C6C6C6,#21252C"
|
||||
color-link cursor-line "#282C34"
|
||||
color-link divider "#1E1E1E"
|
||||
color-link error "#D2A8A1"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#9B859D"
|
||||
color-link gutter-warning "#9B859D"
|
||||
color-link identifier "#61AFEF"
|
||||
|
||||
@@ -13,6 +13,9 @@ color-link gutter-error "#cc7833,#11151C"
|
||||
color-link indent-char "#414141,#2b2b2b"
|
||||
color-link line-number "#a1a1a1,#353535"
|
||||
color-link current-line-number "#e6e1dc,#2b2b2b"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-warning "#a5c261,#11151C"
|
||||
color-link symbol "#edb753,#2b2b2b"
|
||||
color-link identifier "#edb753,#2b2b2b"
|
||||
|
||||
@@ -12,6 +12,9 @@ color-link todo ",brightyellow"
|
||||
color-link indent-char "black"
|
||||
color-link line-number "yellow"
|
||||
color-link current-line-number "red"
|
||||
color-link diff-added "green"
|
||||
color-link diff-modified "yellow"
|
||||
color-link diff-deleted "red"
|
||||
color-link gutter-error ",red"
|
||||
color-link gutter-warning "red"
|
||||
#Cursor line causes readability issues. Disabled for now.
|
||||
|
||||
@@ -16,6 +16,9 @@ color-link tabbar "#003541,#839496"
|
||||
color-link indent-char "#003541,#002833"
|
||||
color-link line-number "#586E75,#003541"
|
||||
color-link current-line-number "#586E75,#002833"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#003541,#CB4B16"
|
||||
color-link gutter-warning "#CB4B16,#002833"
|
||||
color-link cursor-line "#003541"
|
||||
|
||||
@@ -15,6 +15,9 @@ color-link tabbar "black,brightblue"
|
||||
color-link indent-char "black"
|
||||
color-link line-number "bold brightgreen,black"
|
||||
color-link current-line-number "bold brightgreen,default"
|
||||
color-link diff-added "green"
|
||||
color-link diff-modified "yellow"
|
||||
color-link diff-deleted "red"
|
||||
color-link gutter-error "black,brightred"
|
||||
color-link gutter-warning "brightred,default"
|
||||
color-link cursor-line "black"
|
||||
|
||||
@@ -15,6 +15,9 @@ color-link statusline "233,229"
|
||||
color-link tabbar "233,229"
|
||||
color-link indent-char "229"
|
||||
color-link line-number "244"
|
||||
color-link diff-added "34"
|
||||
color-link diff-modified "214"
|
||||
color-link diff-deleted "160"
|
||||
color-link gutter-error "88"
|
||||
color-link gutter-warning "88"
|
||||
color-link cursor-line "229"
|
||||
|
||||
@@ -10,6 +10,9 @@ color-link current-line-number "#868686,#1B1B1B"
|
||||
color-link cursor-line "#1B1B1B"
|
||||
color-link divider "#1E1E1E"
|
||||
color-link error "#D2A8A1"
|
||||
color-link diff-added "#00AF00"
|
||||
color-link diff-modified "#FFAF00"
|
||||
color-link diff-deleted "#D70000"
|
||||
color-link gutter-error "#9B859D"
|
||||
color-link gutter-warning "#9B859D"
|
||||
color-link identifier "#9B703F"
|
||||
|
||||
@@ -16,6 +16,9 @@ color-link statusline "186,236"
|
||||
color-link tabbar "186,236"
|
||||
color-link indent-char "238,237"
|
||||
color-link line-number "248,238"
|
||||
color-link diff-added "34"
|
||||
color-link diff-modified "214"
|
||||
color-link diff-deleted "160"
|
||||
color-link gutter-error "237,174"
|
||||
color-link gutter-warning "174,237"
|
||||
color-link cursor-line "238"
|
||||
|
||||
@@ -89,8 +89,9 @@ selection, micro's mouse support must first be disabled by turning the
|
||||
`mouse` option off. The terminal, unlike micro, has no sense of different
|
||||
buffers/splits and what the different characters being displayed are. This
|
||||
means that for copying multiple lines using the terminal selection, you
|
||||
should first disable line numbers (turn off the `ruler` option), otherwise
|
||||
they might be part of your selection and copied.
|
||||
should first disable line numbers and diff indicators (turn off the `ruler`
|
||||
and `diffgutter` options), otherwise they might be part of your selection
|
||||
and copied.
|
||||
|
||||
## Recommendations
|
||||
|
||||
@@ -103,7 +104,7 @@ The recommended method of copying is the following:
|
||||
* If you are working over SSH, use the terminal keybinding
|
||||
(Ctrl-Shift-c or Command-c) to perform copies. You must first disable
|
||||
the `mouse` option to perform a terminal selection, and you may wish
|
||||
to disable line numbers (`ruler` option) and close other splits. This
|
||||
method will only be able to copy characters that are displayed on the
|
||||
screen (you will not be able to copy more than one page's worth of
|
||||
characters).
|
||||
to disable line numbers and diff indicators (`ruler` and `diffgutter`
|
||||
options) and close other splits. This method will only be able to copy
|
||||
characters that are displayed on the screen (you will not be able to
|
||||
copy more than one page's worth of characters).
|
||||
|
||||
@@ -209,6 +209,7 @@ EndOfLine
|
||||
ParagraphPrevious
|
||||
ParagraphNext
|
||||
ToggleHelp
|
||||
ToggleDiffGutter
|
||||
ToggleRuler
|
||||
JumpLine
|
||||
ClearStatus
|
||||
|
||||
@@ -58,6 +58,10 @@ Here are the available options:
|
||||
|
||||
default value: `true`
|
||||
|
||||
* `diffgutter`: display diff indicators before lines.
|
||||
|
||||
default value: `true`
|
||||
|
||||
* `encoding`: the encoding to open and save files with. Supported encodings
|
||||
are listed at https://www.w3.org/TR/encoding/.
|
||||
|
||||
|
||||
20
runtime/plugins/diff/diff.lua
Normal file
20
runtime/plugins/diff/diff.lua
Normal file
@@ -0,0 +1,20 @@
|
||||
VERSION = "1.0.0"
|
||||
|
||||
local os = import("os")
|
||||
local filepath = import("path/filepath")
|
||||
local shell = import("micro/shell")
|
||||
|
||||
function onBufferOpen(buf)
|
||||
if (not buf.Type.Scratch) and (buf.Path ~= "") then
|
||||
-- check that file exists
|
||||
local _, err = os.Stat(buf.AbsPath)
|
||||
if err == nil then
|
||||
local dirName, fileName = filepath.Split(buf.AbsPath)
|
||||
local diffBase, err = shell.ExecCommand("git", "-C", dirName, "show", "HEAD:./" .. fileName)
|
||||
if err ~= nil then
|
||||
diffBase = buf:Bytes()
|
||||
end
|
||||
buf:SetDiffBase(diffBase)
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user