summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/opencode/src/format/formatters.ts50
1 files changed, 50 insertions, 0 deletions
diff --git a/packages/opencode/src/format/formatters.ts b/packages/opencode/src/format/formatters.ts
index ec4362b68..e1235282b 100644
--- a/packages/opencode/src/format/formatters.ts
+++ b/packages/opencode/src/format/formatters.ts
@@ -74,3 +74,53 @@ export const prettier: Definition = {
}
},
}
+
+export const zig: Definition = {
+ name: "zig",
+ command: ["zig", "fmt", "$FILE"],
+ extensions: [".zig", ".zon"],
+ async enabled() {
+ return Bun.which("zig") !== null
+ },
+}
+
+export const clang: Definition = {
+ name: "clang-format",
+ command: ["clang-format", "-i", "$FILE"],
+ extensions: [
+ ".c",
+ ".cc",
+ ".cpp",
+ ".cxx",
+ ".c++",
+ ".h",
+ ".hh",
+ ".hpp",
+ ".hxx",
+ ".h++",
+ ".ino",
+ ".C",
+ ".H",
+ ],
+ async enabled() {
+ return Bun.which("clang-format") !== null
+ },
+}
+
+export const ktlint: Definition = {
+ name: "ktlint",
+ command: ["ktlint", "-F", "$FILE"],
+ extensions: [".kt", ".kts"],
+ async enabled() {
+ return Bun.which("ktlint") !== null
+ },
+}
+
+export const ruff: Definition = {
+ name: "ruff",
+ command: ["ruff", "format", "$FILE"],
+ extensions: [".py", ".pyi"],
+ async enabled() {
+ return Bun.which("ruff") !== null
+ },
+}