用途:整理 Elixir 文件或当前分支中需要调整的函数顺序。提供文件路径时仅整理该文件;不提供路径时进入分支模式,检查当前分支中发生变更的文件并整理需要更新的文件。查看分支全部改动可用 git diff --name-status "$(git merge-base HEAD main)"...HEAD 与 git status --short。\n\n选择模式:默认仅整理当前分支触及的候选函数,即新增、重命名或可见性变化(def 与 defp 互换)的函数,按本技能排序规则放置,不保留在原编辑区附近;未触及的定义即使顺序不合规则也不移动。覆盖模式仅在明确要求时启用,会整理所选范围内全部函数。\n\n排序规则:LiveView 模块按 mount/3、handle_params/3、handle_event/3、handle_info/2、handle_async/3 等回调,再 render/1,回调组保持连续,handle_event/3 子句按事件名字母序,defp 放最后并按函数名字母序;LiveComponent 类似,回调为 mount/1、update/2 等;普通模块 def 在前按字母序,defp 在后按字母序;测试模块中同一行为先放成功路径,再紧邻其错误路径,defp 放最后并按字母序。\n\n结构安全约束:同名同参数个数的子句视为整体;除非明确要求改变行为,否则保留既有模式匹配子句顺序;被移动函数体除位置外保持不变;保留模块结构、注释、空白约定与非函数代码。输出期望:将候选函数移动到正确顺序位置,即使跨越原改动区域;文件模式无候选则不做改动,分支模式跳过无候选文件;覆盖模式整理全部函数。限制:不改变模式匹配结果。官方文档中未提供的收费、价格、平台等信息暂未提供。
organize-elixir-functions
通用与其它
更新于 10-15 22:41