資料介紹
軟件簡介
Neovim 主機(jī)插件 Elixir 。
示例代碼;
defmodule?AutoComplete?do
??use?NVim.Plugin
??deffunc?elixir_complete("1",_,cursor,line,state),?eval:?"col('.')",?eval:?"getline('.')"?do
????cursor?=?cursor?-?1?#?because?we?are?in?insert?mode
????[tomatch]?=?Regex.run(~r"[\w\.:]*$",String.slice(line,0..cursor-1))
????cursor?-?String.length(tomatch)??end
??deffunc?elixir_complete(_,base,_,_,state),?eval:?"col('.')",?eval:?"getline('.')"?do
????case?(base?|>?to_char_list?|>?Enum.reverse?|>?IEx.Autocomplete.expand)?do
??????{:no,_,_}->?[base]?#?no?expand
??????{:yes,comp,[]}->["#{base}#{comp}"]?#simple?expand,?no?choices
??????{:yes,_,alts}->?#?multiple?choices
????????Enum.map(alts,fn?comp->
??????????{base,comp}?=?{String.replace(base,~r"[^.]*$",""),?to_string(comp)}??????????case?Regex.run(~r"^(.*)/([0-9]+)$",comp)?do?#?first?see?if?these?choices?are?module?or?function
????????????[_,function,arity]->?#?it?is?a?function?completion
??????????????replace?=?base<>function
??????????????module?=?if?String.last(base)?==?".",?do:?Module.concat([String.slice(base,0..-2)]),?else:?Kernel
??????????????if?(docs=Code.get_docs(module,:docs))?&&?(doc=List.keyfind(docs,{:"#{function}",elem(Integer.parse(arity),0)},0))?&&?(docmd=elem(doc,4))?do
?????????????????%{"word"=>replace,"kind"=>?if(elem(doc,2)==:def,?do:?"f",?else:?"m"),?"abbr"=>comp,"info"=>docmd}??????????????else
????????????????%{"word"=>replace,"abbr"=>comp}??????????????end
????????????nil->?#?it?is?a?module?completion
??????????????module?=?base<>comp??????????????case?Code.get_docs(Module.concat([module]),:moduledoc)?do
????????????????{_,moduledoc}?->?%{"word"=>module,"info"=>moduledoc}????????????????_?->?%{"word"=>module}??????????????end
??????????end
????????end)????end
??end
??defautocmd?file_type(state),?pattern:?"elixir",?async:?true?do
????{:ok,nil}?=?NVim.vim_command("filetype?plugin?on")
????{:ok,nil}?=?NVim.vim_command("set?omnifunc=ElixirComplete")
????state??endend
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Elixir函數(shù)式編程語言
- Alchemist Emacs的Elixir集成
- vim-chat neovim和vim8的聊天插件
- Neovim Vim改進(jìn)版 0次下載
- neovim-e Neovim的Electron? UI
- Neovim-dot-app Neovim的Mac OS X GUI
- stack-ide-nvim Neovim插件
- taskrunner.nvim Neovim插件
- neogo Neovim go的開發(fā)插件
- vim-matlab neovim的MATLAB插件
- Nvim-R Neovim的R插件
- nvim-hs Neovim API的Haskell插件
- neovim-qt Qt5中的Neovim客戶端庫和GUI
- nvim-cmp Neovim補(bǔ)全插件
- 12*12插件觸控開關(guān)原理圖 4次下載
- PREEvision插件使用場景介紹 1.1k次閱讀
- Kubernetes的CNI網(wǎng)絡(luò)插件之flannel 1.3k次閱讀
- VSCode插件的安裝和使用 1.5k次閱讀
- 使用DevartExcel插件的好處 1.4k次閱讀
- Rust構(gòu)建QEMU插件的框架 1.6k次閱讀
- 不同語言運(yùn)行100萬個(gè)并發(fā)任務(wù)需要多少內(nèi)存? 1.3k次閱讀
- 開發(fā)人員為什么更喜歡NeoVim而不是Vim 2.8k次閱讀
- 插件器件的方形引腳繪制及處理方法 2.5k次閱讀
- 插件電阻的選用方法 3.2k次閱讀
- dfrobot面包板實(shí)驗(yàn)插件LED插件包簡介 1.9k次閱讀
- 電子接插件電鍍技術(shù) 4.1k次閱讀
- 最受歡迎的七種商用開源編程語言的全面報(bào)告 6.5k次閱讀
- vscode常用插件有哪些 2.2w次閱讀
- jquery插件開發(fā)實(shí)例(MSBar2D圖效果、手風(fēng)琴特效插件) 2.3k次閱讀
- jquery插件寫法及用法(jQuery插件開發(fā)全解析) 1.1w次閱讀
下載排行
本周
- 1矽力杰 Silergy SY7215A 同步升壓調(diào)節(jié)器 規(guī)格書 Datasheet 佰祥電子
- 1.12 MB | 5次下載 | 免費(fèi)
- 2HT81696H 內(nèi)置升壓的30W立體聲D類音頻功放數(shù)據(jù)手冊
- 1.21 MB | 1次下載 | 免費(fèi)
- 3HTA6863 3W超低噪聲超低功耗單聲道D類音頻功率放大器數(shù)據(jù)手冊
- 0.87 MB | 次下載 | 免費(fèi)
- 4南芯 Southchip SC8802C 充電控制器 規(guī)格書 Datasheet 佰祥電子
- 88.16 KB | 次下載 | 免費(fèi)
- 5矽力杰 Silergy SY7065 同步升壓轉(zhuǎn)換器 規(guī)格書 Datasheet 佰祥電子
- 910.67 KB | 次下載 | 免費(fèi)
- 6矽力杰 Silergy SY7066 同步升壓轉(zhuǎn)換器 規(guī)格書 Datasheet 佰祥電子
- 989.14 KB | 次下載 | 免費(fèi)
- 7WD6208A產(chǎn)品規(guī)格書
- 631.24 KB | 次下載 | 免費(fèi)
- 8NB685 26 V,12 A,低靜態(tài)電流,大電流 同步降壓變換器數(shù)據(jù)手冊
- 1.64 MB | 次下載 | 2 積分
本月
- 1EMC PCB設(shè)計(jì)總結(jié)
- 0.33 MB | 12次下載 | 免費(fèi)
- 2PD取電芯片 ECP5702規(guī)格書
- 0.88 MB | 5次下載 | 免費(fèi)
- 3矽力杰 Silergy SY7215A 同步升壓調(diào)節(jié)器 規(guī)格書 Datasheet 佰祥電子
- 1.12 MB | 5次下載 | 免費(fèi)
- 4氮化鎵GaN FET/GaN HEMT 功率驅(qū)動電路選型表
- 0.10 MB | 3次下載 | 免費(fèi)
- 5PD取電芯片,可取5/9/12/15/20V電壓ECP5702數(shù)據(jù)手冊
- 0.88 MB | 3次下載 | 免費(fèi)
- 6SY50655 用于高輸入電壓應(yīng)用的偽固定頻率SSR反激式穩(wěn)壓器英文資料
- 1.01 MB | 3次下載 | 免費(fèi)
- 7怎么為半導(dǎo)體測試儀選擇精密放大器
- 0.65 MB | 2次下載 | 免費(fèi)
- 8SY52341 次級側(cè)同步整流英文手冊
- 0.94 MB | 2次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233095次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191469次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183360次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81606次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73832次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論