Finch/editors/kate
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Claude 68a9493572
Vector types (SIMD): f32x8, i8x32, f64x4 and the rest; --cpu native
- fNxM / iNxM / uNxM up to 512 bits, as LLVM vectors (<8 x float>): LLVM picks SSE, AVX2,
  AVX-512 or NEON for them
- f32x8(x) in every lane, f32x8(a, ..., h), f32x8(list, i) loads, f32x8(i32x8 v) converts
- + - * / and the bit operators lane by lane, with a plain number on either side counting for every lane;
  v[i], v[i] = x, v.len, == / != (every lane), print and str
- methods: sum min max dot abs sqrt floor ceil round fma store; min/max/abs/clamp lane by lane
- wide vectors (and structs holding them) are loaded and stored with align 16, what malloc and the stack give
- --cpu <name> (and cpu = "..." in finch.toml): native, x86-64-v3, apple-m1, ...
- debug info shows vectors; the language server completes their methods; Kate and VS Code highlight them
- f32 x = -1.5 works: a minus in front of a float written in the code keeps it such a number

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Psc42moPLwP43Cmb9oZqSR
2026-11-01 13:50:35 +00:00
..
finch.xml Vector types (SIMD): f32x8, i8x32, f64x4 and the rest; --cpu native 2026-11-01 13:50:35 +00:00
install.sh CMake: enable C (Homebrew LLVM's config needs it); Kate: highlighting, language server setup, install script 2026-10-09 00:36:44 +02:00
lspclient.json CMake: enable C (Homebrew LLVM's config needs it); Kate: highlighting, language server setup, install script 2026-10-09 00:36:44 +02:00
README.md CMake: enable C (Homebrew LLVM's config needs it); Kate: highlighting, language server setup, install script 2026-10-09 00:36:44 +02:00

Finch in Kate

Syntax highlighting and the Finch language server for Kate (and KWrite / KDevelop, which share Kate's highlighting engine).

Install

editors/kate/install.sh

It copies finch.xml to ~/.local/share/org.kde.syntax-highlighting/syntax/ and adds a finch entry to ~/.config/kate/lspclient/settings.json (your other servers are kept). Then:

  1. Restart Kate.
  2. Settings → Configure Kate → Plugins: enable LSP Client (and Build & Run for the next part).
  3. Make sure finch is on your PATH (finch version in a terminal).

Open a .fch file: errors appear as you type, hovering shows types and docs, Ctrl+Space completes (fields and methods after .), Go to Definition and the Symbols outline work, and parameter hints pop up inside (…).

Running and building

Build & Run plugin → Add target set, then add targets with these commands (the working folder can be %d, the folder of the current file):

Target Command
Run finch run %f
Build finch build %f

Give one of them a shortcut in Settings → Configure Keyboard Shortcuts (search for "Build"). Finch's errors have the file:line:column: error: form, so Kate lists them and jumps to the line on click.

By hand

  • Highlighting: copy finch.xml into ~/.local/share/org.kde.syntax-highlighting/syntax/ (Windows: %LOCALAPPDATA%\org.kde.syntax-highlighting\syntax\).
  • Language server: Settings → Configure Kate → LSP Client → User Server Settings, and add the finch entry from lspclient.json inside "servers".