rename
This commit is contained in:
parent
953e867559
commit
8d603846ad
60
commands.lua
60
commands.lua
|
@ -168,53 +168,53 @@ function keychord_pressed_on_command_palette(chord, key)
|
|||
Display_settings.show_palette = false
|
||||
-- don't forget text in case we want to continue it
|
||||
elseif chord == 'backspace' then
|
||||
local len = utf8.len(Display_settings.palette)
|
||||
local byte_offset = Text.offset(Display_settings.palette, len)
|
||||
Display_settings.palette = string.sub(Display_settings.palette, 1, byte_offset-1)
|
||||
Display_settings.palette_text = App.newText(love.graphics.getFont(), Display_settings.palette)
|
||||
local len = utf8.len(Display_settings.palette_command)
|
||||
local byte_offset = Text.offset(Display_settings.palette_command, len)
|
||||
Display_settings.palette_command = string.sub(Display_settings.palette_command, 1, byte_offset-1)
|
||||
Display_settings.palette_command_text = App.newText(love.graphics.getFont(), Display_settings.palette_command)
|
||||
elseif chord == 'tab' then
|
||||
-- select top candidate, but don't submit
|
||||
local candidates = candidates()
|
||||
Display_settings.palette = command_string(candidates[Display_settings.palette_index])
|
||||
Display_settings.palette_text = App.newText(love.graphics.getFont(), Display_settings.palette)
|
||||
Display_settings.palette_command = command_string(candidates[Display_settings.palette_alternative_index])
|
||||
Display_settings.palette_command_text = App.newText(love.graphics.getFont(), Display_settings.palette_command)
|
||||
elseif chord == 'C-v' then
|
||||
Display_settings.palette = Display_settings.palette..App.getClipboardText()
|
||||
Display_settings.palette_text = App.newText(love.graphics.getFont(), Display_settings.palette)
|
||||
Display_settings.palette_command = Display_settings.palette_command..App.getClipboardText()
|
||||
Display_settings.palette_command_text = App.newText(love.graphics.getFont(), Display_settings.palette_command)
|
||||
elseif chord == 'return' then
|
||||
-- select top candidate and submit
|
||||
-- TODO: handle search command
|
||||
local candidates = candidates()
|
||||
if #candidates > 0 then
|
||||
if file_exists(Directory..candidates[Display_settings.palette_index]) then
|
||||
command.open_file_in_next_column(candidates[Display_settings.palette_index])
|
||||
if file_exists(Directory..candidates[Display_settings.palette_alternative_index]) then
|
||||
command.open_file_in_next_column(candidates[Display_settings.palette_alternative_index])
|
||||
else
|
||||
run_command(command_string(candidates[Display_settings.palette_index]))
|
||||
run_command(command_string(candidates[Display_settings.palette_alternative_index]))
|
||||
end
|
||||
else
|
||||
-- try to run the command as if it contains args
|
||||
run_command_with_args(Display_settings.palette)
|
||||
run_command_with_args(Display_settings.palette_command)
|
||||
end
|
||||
-- forget text for next command
|
||||
Display_settings.palette = ''
|
||||
Display_settings.palette_text = App.newText(love.graphics.getFont(), '')
|
||||
Display_settings.palette_command = ''
|
||||
Display_settings.palette_command_text = App.newText(love.graphics.getFont(), '')
|
||||
--
|
||||
Display_settings.show_palette = false
|
||||
Display_settings.palette_index = 1
|
||||
Display_settings.palette_alternative_index = 1
|
||||
elseif chord == 'up' then
|
||||
if Display_settings.palette_index > 1 then
|
||||
Display_settings.palette_index = Display_settings.palette_index-1
|
||||
if Display_settings.palette_alternative_index > 1 then
|
||||
Display_settings.palette_alternative_index = Display_settings.palette_alternative_index-1
|
||||
end
|
||||
elseif chord == 'down' then
|
||||
if Display_settings.palette_index < #candidates() then
|
||||
Display_settings.palette_index = Display_settings.palette_index+1
|
||||
if Display_settings.palette_alternative_index < #candidates() then
|
||||
Display_settings.palette_alternative_index = Display_settings.palette_alternative_index+1
|
||||
end
|
||||
elseif chord == 'left' then
|
||||
if Display_settings.palette_index > Palette_alternatives_height then
|
||||
Display_settings.palette_index = Display_settings.palette_index-Palette_alternatives_height
|
||||
if Display_settings.palette_alternative_index > Palette_alternatives_height then
|
||||
Display_settings.palette_alternative_index = Display_settings.palette_alternative_index-Palette_alternatives_height
|
||||
end
|
||||
elseif chord == 'right' then
|
||||
if Display_settings.palette_index <= #candidates()-Palette_alternatives_height then
|
||||
Display_settings.palette_index = Display_settings.palette_index+Palette_alternatives_height
|
||||
if Display_settings.palette_alternative_index <= #candidates()-Palette_alternatives_height then
|
||||
Display_settings.palette_alternative_index = Display_settings.palette_alternative_index+Palette_alternatives_height
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -240,7 +240,7 @@ function draw_command_palette()
|
|||
love.graphics.rectangle('line', 0, Menu_status_bar_height, App.screen.width, 5+Palette_alternatives_height*Line_height+5)
|
||||
Palette_cursor = {y=Menu_status_bar_height+5, x=5, nextx=5}
|
||||
for i,cmd in ipairs(candidates()) do
|
||||
add_command_to_palette(cmd, i == Display_settings.palette_index)
|
||||
add_command_to_palette(cmd, i == Display_settings.palette_alternative_index)
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -271,8 +271,8 @@ function add_command_to_palette(s, cursor_highlight)
|
|||
end
|
||||
|
||||
function draw_palette_input(x, y)
|
||||
love.graphics.draw(Display_settings.palette_text, x,y)
|
||||
x = x+App.width(Display_settings.palette_text)
|
||||
love.graphics.draw(Display_settings.palette_command_text, x,y)
|
||||
x = x+App.width(Display_settings.palette_command_text)
|
||||
draw_cursor(x, y)
|
||||
end
|
||||
|
||||
|
@ -287,14 +287,14 @@ end
|
|||
function candidates()
|
||||
-- slight context-sensitive tweaks
|
||||
local candidates = initial_candidates()
|
||||
if Display_settings.palette == '' then
|
||||
if Display_settings.palette_command == '' then
|
||||
return candidates
|
||||
elseif Display_settings.palette:sub(1,1) == '/' then
|
||||
elseif Display_settings.palette_command:sub(1,1) == '/' then
|
||||
return {}
|
||||
else
|
||||
local results = filter_candidates(candidates, Display_settings.palette)
|
||||
local results = filter_candidates(candidates, Display_settings.palette_command)
|
||||
if Display_settings.mode == 'normal' then
|
||||
append(results, file_candidates(Display_settings.palette))
|
||||
append(results, file_candidates(Display_settings.palette_command))
|
||||
end
|
||||
return results
|
||||
end
|
||||
|
|
10
main.lua
10
main.lua
|
@ -78,9 +78,9 @@ function App.initialize_globals()
|
|||
x=0, y=0, -- <==== Top-left corner of the viewport into the surface
|
||||
column_width=400,
|
||||
show_palette=false,
|
||||
palette='',
|
||||
palette_text=App.newText(love.graphics.getFont(), ''),
|
||||
palette_index=1,
|
||||
palette_command='',
|
||||
palette_command_text=App.newText(love.graphics.getFont(), ''),
|
||||
palette_alternative_index=1,
|
||||
}
|
||||
-- display settings that are constants
|
||||
Font_height = 20
|
||||
|
@ -678,8 +678,8 @@ function App.textinput(t)
|
|||
--? print('textinput', t)
|
||||
-- hotkeys operating on the cursor pane
|
||||
if Display_settings.show_palette then
|
||||
Display_settings.palette = Display_settings.palette..t
|
||||
Display_settings.palette_text = App.newText(love.graphics.getFont(), Display_settings.palette)
|
||||
Display_settings.palette_command = Display_settings.palette_command..t
|
||||
Display_settings.palette_command_text = App.newText(love.graphics.getFont(), Display_settings.palette_command)
|
||||
elseif Display_settings.mode == 'normal' then
|
||||
if Cursor_pane.col >= 1 then
|
||||
local pane = Surface[Cursor_pane.col][Cursor_pane.row]
|
||||
|
|
Loading…
Reference in New Issue
Block a user