国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

給ctags添加對Elixir的支持

nodejh / 1450人閱讀

摘要:背景概述官方已經許久未更新了,截至本文寫作時止,最后一次更新在,所以很多新出的語言都沒能得到支持現在上有一個出來的項目叫,它拾起了對的更新,但是很遺憾,也暫未得到支持自己動手豐衣足食好在支持一個自定義的配置文件,名為,可以在這里書寫規

背景概述

ctags 官方已經許久未更新了,截至本文寫作時止,最后一次更新在 2009-07-09,所以很多新出的語言都沒能得到支持

現在 Github 上有一個 fork 出來的項目叫 universal-ctags,它拾起了對 ctags 的更新,但是很遺憾,Elixir 也暫未得到支持

自己動手豐衣足食

好在 ctags 支持一個自定義的配置文件,名為 .ctags,可以在這里書寫規則實現對未知編程語言的解析

下面是針對 Elixir 的配置

--langdef=Elixir
--langmap=Elixir:.ex.exs
--regex-Elixir=/^[ 	]*def(p?)[ 	]+([a-z_][a-zA-Z0-9_?!]*)/2/f,functions,functions (def ...)/
--regex-Elixir=/^[ 	]*defcallback[ 	]+([a-z_][a-zA-Z0-9_?!]*)/1/c,callbacks,callbacks (defcallback ...)/
--regex-Elixir=/^[ 	]*defdelegate[ 	]+([a-z_][a-zA-Z0-9_?!]*)/1/d,delegates,delegates (defdelegate ...)/
--regex-Elixir=/^[ 	]*defexception[ 	]+([A-Z][a-zA-Z0-9_]*.)*([A-Z][a-zA-Z0-9_?!]*)/2/e,exceptions,exceptions (defexception ...)/
--regex-Elixir=/^[ 	]*defimpl[ 	]+([A-Z][a-zA-Z0-9_]*.)*([A-Z][a-zA-Z0-9_?!]*)/2/i,implementations,implementations (defimpl ...)/
--regex-Elixir=/^[ 	]*defmacro(p?)[ 	]+([a-z_][a-zA-Z0-9_?!]*)(/2/a,macros,macros (defmacro ...)/
--regex-Elixir=/^[ 	]*defmacro(p?)[ 	]+([a-zA-Z0-9_?!]+)?[ 	]+([^ 	A-Za-z0-9_]+)[ 	]*[a-zA-Z0-9_!?!]/3/o,operators,operators (e.g. "defmacro a <<< b")/
--regex-Elixir=/^[ 	]*defmodule[ 	]+([A-Z][a-zA-Z0-9_]*.)*([A-Z][a-zA-Z0-9_?!]*)/2/m,modules,modules (defmodule ...)/
--regex-Elixir=/^[ 	]*defprotocol[ 	]+([A-Z][a-zA-Z0-9_]*.)*([A-Z][a-zA-Z0-9_?!]*)/2/p,protocols,protocols (defprotocol...)/
--regex-Elixir=/^[ 	]*Record.defrecord[ 	]+:([a-zA-Z0-9_]+)/1/r,records,records (defrecord...)/

把上述內容保存到文本文件,并命名為 .ctags,MacOSX 和 Linux 放置到自己的家目錄下即可;Windows 下得先設置個名為 HOMEPATH 的環境變量,然后將 .ctags 放置到該環境變量所指路徑下

打開命令行,執行 ctags --list-languages,在輸出的信息中能找到 Elixir 則說明配置成功

怎么可能少得了Vim

在 Vim 里面即時瀏覽代碼結構,首推 tagbar 插件,這里就不介紹怎么安裝、怎么使用了,下面是添加對 Elixir 的支持,將其寫在 .vimrc 中即可

let g:tagbar_type_elixir = {"ctagstype": "elixir", "kinds": ["f:functions:0:0", "c:callbacks:0:0", "d:delegates:0:0", "e:exceptions:0:0", "i:implementations:0:0", "a:macros:0:0", "o:operators:0:0", "m:modules:0:0", "p:protocols:0:0", "r:records:0:0"], "sro": ".", "kind2scope": {"m": "modules"}, "scope2kind": {"modules": "m"}}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/24825.html

相關文章

  • 在 Laravel 項目中使用 Glup 之 Laravel-Elixir

    摘要:結果會被存放到拷貝文件目錄你可以使用方法拷貝文件目錄到新路徑,所有操作都相對于項目根目錄版本號緩存刷新很多開發者會給編譯的前端資源添加時間戳或者唯一令牌后綴以強制瀏覽器加載最新版本而不是代碼的緩存副本。 環境準備 1、安裝 nodejs 和 npm ?如果你使用的是 Laravel 的 Homestead 環境,可以不用安裝了,已自帶。 ?我們來查看下它們的版本: $ node -v ...

    ralap 評論0 收藏0
  • Vim插件簡單介紹

    摘要:轉換時支持模板文件,配合強大的模板文件,可以自己創建,或者是實現語法高亮,還支持數學公式編輯。標簽文件允許這些項目能夠被一個文本編輯器或其它工具簡捷迅速的定位。 原文地址 Vim作為一個強大的編輯器,再配合強大的插件,就可以稱得上為編輯神器了。 pathogen pathogen為管理插件的插件,類似的還有vundle。在 Pathogen 之前,安裝插件就是把插件文件放在.vim目錄...

    dackel 評論0 收藏0
  • Laravel學習筆記三-前端工作流

    摘要:本節將學習是如何利用形成一套完整的前端工作流模式的。你也可以使用下面命令來強制安裝所有模塊,不管該模塊之前是否安裝過由于國內墻的原因,使用安裝會非常緩慢,慢到想切,不過還好,我們可以使用淘寶提供的國內鏡像進行下載。 本節將學習 Laravel 是如何利用 Sass, NPM, Gulp形成一套完整的前端工作流模式的。 一、句法強大的樣式表Sass Sass 是一種可用于編寫CSS的語言...

    liuchengxu 評論0 收藏0
  • 如何優雅使用 Vim(二):插件介紹

    摘要:如何優雅的使用二插件介紹插件使用管理。文件管理器樹形結構的文件管理器,目前使用。不同層次的括號顏色不一樣,如下圖另見然而這些彩虹括號插件,都免不了與沖突會使語法高亮失效,只好放棄了。 如何優雅的使用 Vim(二):插件介紹 插件使用 vim-plug 管理。很長一段時間,我都在用 Vundle,切換到 vim-plug 并非完全必要。 插件定義開始 call plug#begin(~...

    yeooo 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<