跳到主要内容

Elixir 代码格式化工具

API reference

格式化和美化 Elixir 源代码 — 操作符/逗号间距、do/fn/end 块深度缩进、空行规范化,以及 alias/import/require/use 组的可选字母排序,符合 mix format 约定。包括基本的括号和块平衡验证。完全在您的浏览器中运行。

输入

Drop a file or browse
One file · text
或

用于标记过长行(mix format 默认值为 98)。

输出

验证
Issue
No data yet
格式化的 Elixir 代码
 
这对您有帮助吗?

使用此工具的更多方式

REST API

curl -X POST https://api.iotools.cloud/v1/tool/elixir-code-formatter \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "elixirInput": "defmodule MyApp.Accounts.User do\n@moduledoc \"\"\"\n…",
    "maxLineLength": "98",
    "sortAliases": "true"
  }'

替换成您账户中的密钥。工具的字段即为请求体——没有额外包装。

让 AI 代理执行

Use the IOTools `elixir-code-formatter` tool (Elixir Code Formatter) on this input:

YOUR_INPUT_HERE

将此粘贴给任何已连接 IOTools MCP 服务器的代理,再加上您的输入内容。

嵌入式小组件

<iframe
  src="https://iotools.cloud/embed/elixir-code-formatter/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Elixir 代码格式化工具 — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

把它放到您自己的页面上——免费,无需密钥,只需保留一个反向链接。

每次 API/MCP 调用费用5 积分起
需要更多积分?查看定价

也可通过

使用指南

粘贴未格式化的 Elixir 源代码,获取具有一致操作符/逗号间距、do/fn/end 块深度缩进和规范化空行的代码 — 尽可能接近 mix format 约定,如基于浏览器的格式化工具所能达到的那样。字符串、字符列表、符号 (~r、~D 等)、heredocs 和注释被分词并保持不变;只有周围的代码被重新格式化。快速验证通过会标记不平衡的括号和不匹配的 do/fn/end 块。一切都在您的浏览器中本地运行。

使用方法

  1. 粘贴您的 Elixir 源代码,或上传 .ex/.exs 文件。
  2. 设置最大行长以标记过长行(mix format 默认值为 98)。
  3. 打开排序和分组 alias / import / require / use 块以按模块路径按字母顺序排列 alias/import/require/use 语句的每个连续运行 — 关闭以保持原始顺序。
  4. 检查验证面板以查找任何语法问题,然后复制或下载格式化的结果。

它格式化什么

  • 二元操作符周围的间距 (+ - * / == != <= >= && || <> .. |> -> <-) 和一元操作符 -/!/^/&,它们紧贴其操作数。
  • 逗号、分号和在关键字列表和 do:/else: 块中使用的 key: 简写。
  • %{...} 映射和 %MyStruct{...} 结构体文字,紧贴后面的括号。
  • 按 do/fn ↔ end 块深度和括号深度的缩进,else/rescue/catch/after 回退到其块自身的级别。
  • 空行规范化:将空行序列合并为一行,删除 end/)/]/} 前的杂散空白,并在跟随其他代码的 def/defmodule/defprotocol/… 声明前插入一行(但不在块打开器之后或其自身 @doc/@moduledoc/@spec 之后)。

它在语义上验证代码吗?

不 — 这只检查结构:不平衡的 ()[]{}}、没有其 end 的不匹配 do/fn(反之亦然)和未终止的 heredoc。它不会捕获未定义的函数或永远不能成功的模式匹配。对于真正的验证,请使用 mix compile 或 mix format --check-formatted。

我的代码被上传到哪里了?

没有。分词、间距和重新缩进都在您的浏览器中本地运行;您的 Elixir 源代码永远不会发送到服务器。

需要格式化不同的语言?

使用 Zig 语言格式化工具或 Lua 代码格式化工具以获取其他手动构建的基于浏览器的格式化工具。

elixircode formatterbeautifymix formatindentpretty print

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。