diff options
Diffstat (limited to 'src/e_keys.go')
-rw-r--r-- | src/e_keys.go | 98 |
1 files changed, 33 insertions, 65 deletions
diff --git a/src/e_keys.go b/src/e_keys.go index 29c789f..0158450 100644 --- a/src/e_keys.go +++ b/src/e_keys.go @@ -62,6 +62,7 @@ import ( func e_normal_events(data *HardData, ui *HardUI, event tcell.EventKey) bool { if event.Key() == tcell.KeyCtrlC || event.Rune() == 'q' { + write_log("exit") ui.s.Fini() os.Exit(0) } else if event.Rune() == 'j' || @@ -172,18 +173,18 @@ func e_normal_events(data *HardData, ui *HardUI, event tcell.EventKey) bool { ui.insert_sel = 0 ui.insert_sel_ok = false ui.insert_scroll = 0 - tmp := ItemsNode{} + // tmp := ItemsNode{} data.insert = &HostNode{} - tmp.Host = data.insert - if data.litems.curr == nil { - tmp.Host.parent = data.ldirs.head - } else if data.litems.curr.is_dir() == true { - data.insert.parent = data.litems.curr.Dirs - } else { - data.insert.parent = data.litems.curr.Host.parent - } - e_set_protocol_defaults(data, data.insert) - data.litems.add_after(&tmp) + // tmp.Host = data.insert + // if data.litems.curr == nil { + // tmp.Host.parent = data.ldirs.head + // } else if data.litems.curr.is_dir() == true { + // data.insert.parent = data.litems.curr.Dirs + // } else { + // data.insert.parent = data.litems.curr.Host.parent + // } + // e_set_protocol_defaults(data, data.insert) + // data.litems.add_after(&tmp) } else if event.Rune() == 'e' && data.litems.curr != nil && data.litems.curr.is_dir() == false { @@ -261,7 +262,6 @@ func e_normal_events(data *HardData, ui *HardUI, event tcell.EventKey) bool { } else if (event.Rune() == '/' || event.Key() == tcell.KeyCtrlF) && data.litems.curr != nil { - e_create_fuzz_list(data) ui.mode = FUZZ_MODE } else if event.Rune() == '?' { ui.mode = HELP_MODE @@ -366,12 +366,6 @@ func e_insert_name_events(data *HardData, ui *HardUI, ui.insert_sel = 0 data.insert = nil ui.buff.empty() - tmp := data.litems.curr.prev - data.litems.del(data.litems.curr) - if tmp == nil { - tmp = data.litems.head - } - data.litems.curr = tmp } else if event.Key() == tcell.KeyEnter { if ui.buff.len() == 0 { ui.s.HideCursor() @@ -380,20 +374,16 @@ func e_insert_name_events(data *HardData, ui *HardUI, ui.insert_sel_ok = false data.insert = nil ui.buff.empty() - tmp := data.litems.curr.prev - data.litems.del(data.litems.curr) - if tmp == nil { - tmp = data.litems.head - } - data.litems.curr = tmp return true } + data.insert.Name = ui.buff.str() + data.insert.parent = data.litems.curr.Host.parent + e_set_protocol_defaults(data, data.insert) ui.s.HideCursor() ui.mode = INSERT_MODE ui.buff.empty() } else { e_readline(event, &ui.buff, ui, data.home_dir) - data.litems.curr.Host.Name = ui.buff.str() } return false } @@ -416,12 +406,6 @@ func e_insert_events(data *HardData, ui *HardUI, event tcell.EventKey) bool { ui.s.HideCursor() ui.mode = NORMAL_MODE ui.insert_sel = 0 - tmp := data.litems.curr.prev - data.litems.del(data.litems.curr) - if tmp == nil { - tmp = data.litems.head - } - data.litems.curr = tmp data.insert = nil ui.buff.empty() } else if event.Rune() == 'j' || @@ -921,49 +905,33 @@ func e_fuzz_events(data *HardData, ui *HardUI, event tcell.EventKey) bool { ui.s.HideCursor() ui.mode = NORMAL_MODE ui.buff.empty() - data.lfuzz = nil return true } else if event.Key() == tcell.KeyEnter { // TODO: select fuzzed item ui.s.HideCursor() ui.mode = NORMAL_MODE ui.buff.empty() - data.lfuzz = nil } else { e_readline(event, &ui.buff, ui, data.home_dir) - e_update_lfuzz(ui.buff, data.lfuzz) } - // TODO: here return false } -func e_create_fuzz_list(data *HardData) { - if data.litems.head == nil { - return - } - for ptr := data.litems.head; ptr != nil; ptr = ptr.next { - data.lfuzz.add_back(ptr) - } -} - -func e_update_lfuzz(buff Buffer, lfuzz *FuzzList) { - if lfuzz.head == nil { - return - } - for ptr := lfuzz.head; ptr != nil; ptr = ptr.next { - var name_runes []rune - name_runes = []rune(ptr.name) - var end_runes []rune - for _, buff_ptr := range buff.data { - for _, name_ptr := range name_runes { - if buff_ptr == name_ptr { - end_runes = append(end_runes, buff_ptr) - continue - } - } - } - if len(end_runes) == 0 { - lfuzz.del(ptr) - } - } -} +// func e_update_lfuzz(buff Buffer) { +// for ptr := lfuzz.head; ptr != nil; ptr = ptr.next { +// var name_runes []rune +// name_runes = []rune(ptr.name) +// var end_runes []rune +// for _, buff_ptr := range buff.data { +// for _, name_ptr := range name_runes { +// if buff_ptr == name_ptr { +// end_runes = append(end_runes, buff_ptr) +// continue +// } +// } +// } +// if len(end_runes) == 0 { +// lfuzz.del(ptr) +// } +// } +// } |