沒穿方服

封存

顯示╱隱藏內文

隨著 next-on-pages 停止維護,附送網址 feeders.pages.dev 也中死的宣告,還是趕快買個網域給它吧。

Feeders 首頁擷圖

仍然使用 feeders 這個名字

其實「feeders」本來只想暫用,等真的要買網域再亮底牌。 但後來想想原計畫的名字表態明顯,就是反餵食直接批判, 而在快一年營運之下,餵食地圖的用量幾乎是 0,反而「事實」頁面比較有人看,跟原本想像已經不一樣了。 如果無法燃起反餵食的火力,那還是繼續用比較中性的 feeders 好了。

候選域名們

最有公信力的 .com .org 都搶不到了,.tw 一年要 800 有點貴(台幣),屈於現實的考量這些就先算了。

有些新興域名定價在 310 像 .foo .boo 也還可以,但太隨便。

帶點惡意的 .icu 其實不錯(餵食癖.加護病房,你在餵.我在看),還有 .rip 也類似而稍貴一點,但這樣就辜負前述 feeders 的立意良善了。

.dog 很適合,但很貴要 1343,不愧是特權物種,我反對。

最後考慮 feeders.ccfeeders.fyi

.cc 在台灣有 PTT 和 KKTIX、Wretch 等用過,有點知名度,好記又好打,硬要說的話我的名字也曾被略為 CC。

最後基於尊重語意的理念,拒絕 cc,選了 fyi,這個域名本來就是設計給 For Your Information 用途的,還算貼切。

Telescope 官方 README 建議不要追 master 版本,我也真的踩過雷,所以一直停在 0.1.8,18 個月前的東西了。

前幾天終於釋出 0.1.9,變動列出來很長:
Release v0.1.9 · nvim-telescope/telescope.nvim (我也貢獻了一個 PR)
光看標記為 feat 的就要花些時間了,本篇選幾個列出來。

新增 actions.select_tab_drop

選擇檔案後要怎麼開啟,身為分頁使用者當然是用 tab drop 啊。

這個 2022 年就實作的東西一直沒有釋出,我用自己寫的 function 代用很久,終於能換掉了。

除了一些檔案類 picker 能直接設定 mappings 例如 ['<CR>'] = 'select_tab_drop' 這樣,在一些 LSP picker 也能用 jump_type = 'tab drop' 達到相當效果(#2218#2751)。

顯示 * 表示正在搜尋

就是搜尋框後面會多一個顯示,跑完就會消失 (#2637)。

新增 actions.delete_buffer

給 buffers picker 用的,預設按鍵是 <M-d>。 (#3145

新事件 TelescopeResumePost

原來 telescope 有幾個自訂 User 事件 (autocmd),doc 沒寫,只有 README 有提到。
但應該是 plugin 開發者比較有機會用到。 (#2433

插入 <cWORD><cfile>

以前在 picker 輸入框裡想用 <C-R><C-W>(貼上游標文字)或 <C-R>%(目前檔案路徑)會發現貼不出東西,現在特別加了幾個預設 mapping 來做這些事。 (#3134 等)

新增「bcommits_range」 picker

以前雖然有 bcommits picker 可以列出目前檔案的歷史,但沒辦法針對「特定幾行」或「目前這一行」比較精準地追溯,現在新增 bcommits_range 滿足你的願望,#2398

不過預設動作只有 checkout 或者打開 diff,我的習慣還是用 vim-gitdiffall 這老東西:

※這個範例用到我自己寫的 vim function,所以不能真的拿來用,僅供參考
gitdiff = function(bufnr)
  -- Refer to builtin: actions.git_checkout_current_buffer
  local cwd = action_state.get_current_picker(bufnr).cwd
  local selection = action_state.get_selected_entry()
  actions.close(bufnr)

  local fugitive_path = vim.fn.FugitivePath(selection.current_file)
  local display_name = vim.fn.fnamemodify(fugitive_path, ':.')
  local command = string.format("tabnew %s | silent GitDiff @%s", display_name, selection.value)
  vim.cmd(command)
end,

gitdiffall = function(bufnr)
  local cwd = action_state.get_current_picker(bufnr).cwd
  local selection = action_state.get_selected_entry()
  actions.close(bufnr)

  local toplevel = vim.fn.eval("fugitive#repo().tree()")
  vim.fn.TmuxNewWindow({
    text = "gitdiffall @" .. selection.value,
    title = '⎇',
    directory = toplevel
  })
end,