vimrc/sources_non_forked/vim-snippets/snippets/elixir.snippets

298 lines
5 KiB
Text
Raw Normal View History

2013-07-17 23:06:05 +00:00
snippet do
do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
2013-07-17 23:06:05 +00:00
end
2017-05-02 12:42:08 +00:00
snippet put IO.puts
2022-10-15 19:05:32 +00:00
IO.puts("${0}")
2017-05-02 12:42:08 +00:00
snippet ins IO.inspect
2022-10-15 19:05:32 +00:00
IO.inspect(${0})
2017-05-02 12:42:08 +00:00
snippet insl IO.inspect with label
IO.inspect(${0}label: "${1:label}")
2013-07-17 23:06:05 +00:00
snippet if if .. do .. end
if ${1} do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
2013-07-17 23:06:05 +00:00
end
2015-02-24 10:45:22 +00:00
snippet if: if .. do: ..
if $1, do: ${0}
2013-07-17 23:06:05 +00:00
snippet ife if .. do .. else .. end
if $1 do
2017-02-11 13:01:38 +00:00
${2:${VISUAL}}
2013-07-17 23:06:05 +00:00
else
${0}
2013-07-17 23:06:05 +00:00
end
2015-02-24 10:45:22 +00:00
snippet ife: if .. do: .. else:
if $1, do: ${2}, else: ${0}
2013-07-17 23:06:05 +00:00
snippet unless unless .. do .. end
unless ${1} do
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
2013-07-17 23:06:05 +00:00
end
2015-02-24 10:45:22 +00:00
snippet unless: unless .. do: ..
unless $1, do: ${0}
2013-07-17 23:06:05 +00:00
snippet unlesse unless .. do .. else .. end
unless $1 do
2017-02-11 13:01:38 +00:00
${2:${VISUAL}}
2013-07-17 23:06:05 +00:00
else
${0}
2013-07-17 23:06:05 +00:00
end
2015-02-24 10:45:22 +00:00
snippet unlesse: unless .. do: .. else:
unless $1, do: ${2}, else: ${0}
2013-07-17 23:06:05 +00:00
snippet cond
cond do
2015-03-14 20:02:10 +00:00
${1} ->
2017-02-11 13:01:38 +00:00
${0:${VISUAL}}
2013-07-17 23:06:05 +00:00
end
snippet case
case ${1} do
2015-03-14 20:02:10 +00:00
${2} ->
${0}
2013-07-17 23:06:05 +00:00
end
2015-07-13 10:22:46 +00:00
snippet for
for ${1:item} <- ${2:items} do
${0}
end
2017-05-02 12:42:08 +00:00
snippet for:
for ${1:item} <- ${2:items}, do: ${0}
2015-07-13 10:22:46 +00:00
snippet fori
for ${1:item} <- ${2:items}, into: ${3} do
${0}
end
2016-10-02 11:37:21 +00:00
snippet wi
2017-05-02 12:42:08 +00:00
with ${1:item} <- ${2:items} do
2016-10-02 11:37:21 +00:00
${0}
end
snippet wie
with(
${1:item} <- ${2:items}
) do
${3}
else
${4} ->
${0}
end
2017-05-02 12:42:08 +00:00
snippet sp
@spec ${1:name}(${2:args}) :: ${3:returns}
snippet op
@opaque ${1:type_name} :: ${2:type}
snippet ty
@type ${1:type_name} :: ${2:type}
snippet typ
@typep ${1:type_name} :: ${2:type}
snippet cb
@callback ${1:name}(${2:args}) :: ${3:returns}
snippet df
def ${1:name}, do: ${2}
2020-12-04 21:15:32 +00:00
snippet dfw
def ${1:name}(${2:args}) when ${3:guard}, do:
2013-07-17 23:06:05 +00:00
snippet def
def ${1:name} do
${0}
2013-07-17 23:06:05 +00:00
end
2015-02-24 10:45:22 +00:00
snippet defd
@doc """
${1:doc string}
"""
def ${2:name} do
${0}
end
2020-12-04 21:15:32 +00:00
snippet defs
@spec ${1:name}(${2:arg types}) :: ${3:no_return}
def $1(${4:args}) do
${0}
end
2017-07-06 12:57:35 +00:00
snippet defsd
@doc """
${1:doc string}
"""
2020-12-04 21:15:32 +00:00
@spec ${2:name}(${3:arg types}) :: ${4:no_return}
def $2(${5:args}) do
${0}
end
snippet defw
def ${1:name}(${2:args}) when ${3:guard} do
2017-07-06 12:57:35 +00:00
${0}
end
2013-07-17 23:06:05 +00:00
snippet defim
defimpl ${1:protocol_name}, for: ${2:data_type} do
${0}
2013-07-17 23:06:05 +00:00
end
snippet defma
defmacro ${1:name} do
${0}
2013-07-17 23:06:05 +00:00
end
snippet defmo
2015-12-08 13:20:04 +00:00
defmodule ${1:`substitute(vim_snippets#Filename(), '\(_\|^\)\(.\)', '\u\2', 'g')`} do
${0}
2013-07-17 23:06:05 +00:00
end
2020-12-04 21:15:32 +00:00
snippet %M
%__MODULE__{
${1:key_name}: ${2:value}
}
snippet enfk
@enforce_keys [:${1:key_name}]
2016-11-09 17:22:55 +00:00
snippet dfp
defp ${1:name}, do: ${2}
2020-12-04 21:15:32 +00:00
snippet dfpw
defp ${1:name}(${2:args}) when ${3:guard}, do: ${4}
2013-07-17 23:06:05 +00:00
snippet defp
defp ${1:name} do
${0}
2013-07-17 23:06:05 +00:00
end
2020-12-04 21:15:32 +00:00
snippet defpw
defp ${1:name}(${2:args}) when ${3:guard} do
${0}
end
2013-07-17 23:06:05 +00:00
snippet defpr
defprotocol ${1:name}, [${0:function}]
2013-07-17 23:06:05 +00:00
snippet defr
defrecord ${1:record_name}, ${0:fields}
2013-07-17 23:06:05 +00:00
snippet doc
@doc """
${0}
2013-07-17 23:06:05 +00:00
"""
2019-03-08 11:04:56 +00:00
snippet docs
@doc ~S"""
${0}
"""
2016-11-09 17:22:55 +00:00
snippet docf
@doc false
2019-03-08 11:04:56 +00:00
snippet im
@impl true
2013-07-17 23:06:05 +00:00
snippet fn
2015-02-24 10:45:22 +00:00
fn ${1:args} -> ${0} end
2013-07-17 23:06:05 +00:00
snippet mdoc
@moduledoc """
${0}
2013-07-17 23:06:05 +00:00
"""
2019-03-08 11:04:56 +00:00
snippet mdocs
@moduledoc ~S"""
${0}
"""
2015-12-16 13:53:53 +00:00
snippet mdocf
@moduledoc false
2013-07-17 23:06:05 +00:00
snippet rec
receive do
2015-07-13 10:22:46 +00:00
${1} ->
${0}
2013-07-17 23:06:05 +00:00
end
snippet req
2018-02-04 11:35:08 +00:00
require ${0:Logger}
2013-07-17 23:06:05 +00:00
snippet imp
import ${0:module_name}
2013-07-17 23:06:05 +00:00
snippet ali
alias ${0:module_name}
2013-07-17 23:06:05 +00:00
snippet test
2016-08-02 12:48:32 +00:00
test "${1:test name}" do
${0}
2013-07-17 23:06:05 +00:00
end
2018-02-04 11:35:08 +00:00
snippet testc
test "${1:test_name}", ctx do
${0}
end
2015-02-24 10:45:22 +00:00
snippet testa
test "${1:test_name}", %{${2:arg: arg}} do
2016-03-14 10:04:57 +00:00
${0}
end
2016-08-02 12:48:32 +00:00
snippet des
describe "${1:test group subject}" do
${0}
end
2020-12-04 21:15:32 +00:00
snippet destag
@describetag :${1:describe tag}
snippet mtag
@moduletag :${1:module tag}
snippet dt
doctest ${1:filename}
snippet tp
@tag :pending
2016-03-14 10:04:57 +00:00
snippet exunit
defmodule ${1:`substitute(vim_snippets#Filename(), '\(_\|^\)\(.\)', '\u\2', 'g')`} do
2016-06-11 13:56:50 +00:00
use ExUnit.Case, async: true
2016-03-14 10:04:57 +00:00
2015-02-24 10:45:22 +00:00
${0}
end
2020-12-04 21:15:32 +00:00
snippet setup
setup do
${1}
end
snippet setupa
setup_all do
${1}
end
2013-07-17 23:06:05 +00:00
snippet try try .. rescue .. end
try do
2017-02-11 13:01:38 +00:00
${1:${VISUAL}}
2013-07-17 23:06:05 +00:00
rescue
${2} -> ${0}
2013-07-17 23:06:05 +00:00
end
2015-02-24 10:45:22 +00:00
snippet pry
require IEx; IEx.pry
2015-03-14 20:02:10 +00:00
${0}
2020-01-29 02:07:36 +00:00
snippet ppry
|> (fn x -> require IEx; IEx.pry; x end).()${0}
2015-12-08 13:20:04 +00:00
snippet qu
quote do
${1}
end
2016-06-11 13:56:50 +00:00
snippet beh
@behaviour ${1:Mix.Task}
${0}
snippet p
|> ${0}
2017-05-02 12:42:08 +00:00
snippet >e pipe to each
|> Enum.each(fn ${1} -> ${0} end)
snippet >m pipe to map
|> Enum.map(fn ${1} -> ${0} end)
snippet >f pipe to filter
|> Enum.filter(fn ${1} -> ${0} end)
snippet >r pipe to reduce
|> Enum.reduce(${1:acc}, fn ${2}, ${3:acc} -> ${0} end)
snippet >i pipe to inspect
2022-10-15 19:05:32 +00:00
|> IO.inspect()
2017-05-02 12:42:08 +00:00
snippet >il pipe to inspect with label
|> IO.inspect(label: "${1:label}")
snippet cs
@doc false
def child_spec(${1:_opts}) do
%{
id: __MODULE__,
start: {__MODULE__, :start_link, ${2:[]}},
restart: ${3::permanent},
shutdown: ${4:5000},
type: ${5::worker}
}
end
snippet genserver basic genserver structure
use GenServer
@doc false
2022-10-15 19:05:32 +00:00
def start_link(init_args) do
GenServer.start_link(__MODULE__, init_args, name: __MODULE__)
end
@impl true
def init(state) do
{:ok, state}
end
2022-10-15 19:05:32 +00:00
snippet super basic supervisor structure
use Supervisor
@doc false
2022-10-15 19:05:32 +00:00
def start_link(init_args) do
Supervisor.start_link(__MODULE__, init_args, name: __MODULE__)
end
@impl true
2022-10-15 19:05:32 +00:00
def init(_init_args) do
children = [${1}]
Supervisor.init(children, strategy: :one_for_one)
end
snippet impl
@impl true
def ${1:name} do
${0}
end
2019-03-08 11:04:56 +00:00
snippet wl word list
~w(${0})
snippet al atom list
~w(${0})a