Open kamecha opened 4 months ago
ひとまず、該当メッセージから対象チャンネルを開くやつ実装しないとダメそう
↑これとちょっと似てる感じ&選択用UIを別途提供するのも面倒
だからひとまずdduのソースとして、実装
クエリはsourceのparamsとする感じでいこう
後々vim.ui.selectとかがvimでも汎用的に使えればそっちも作る感じで
vim.ui.selectはvimにないし、popup_menu()はneovimには無い
だからffソースを作った後に、独自viewを作る感じにする
既存のメッセージdraw用関数も流用できそう
自作viewは↓みたいな手法もある(kuuさん作)
function s:callback()
let winid = b:id
echomsg getline('.')
tabclose
call win_gotoid(winid)
endfunction
function s:select(list)
let winid = win_getid()
tabnew
let b:id = winid
setlocal buftype=nofile
setlocal bufhidden=hide
setlocal noswapfile
call setline(1, a:list)
nnoremap <buffer> <CR> <Cmd>call <SID>callback()<CR>
endfunction
call s:select(['unko', 'buri'])
簡素な検索機能を提供する
:Traq message search -in=general -from=kamecha うんこ
みたいな感じのインターフェースにしたいただ取得してきたメッセージをどのように表示するのか、どうするのかはまだ未定 ひとまずdduを使わない方法で実装して、ddu使うとより便利になる感じにしたい
39
↑これとちょっと違うけど似てる