# 使用 Homebrew, apt, Nix 安装 findent

查看 findent 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:findent
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install findent
```

  证据: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install findent
```

  证据: Debian stable package indexes: findent from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#findent
```

  证据: nixpkgs package indexes: pkgs/by-name/fi/findent/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## 软件包事实

- **软件包键:** brew:findent
- **软件包管理器:** Homebrew
- **版本:** 4.3.7
- **来源摘要:** Indent and beautify Fortran sources and generate dependency information
- **主页:** <https://www.ratrabbit.nl/ratrabbit/findent/index.html>
- **最后更新:** 2026-05-27T13:37:25Z
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- findent (别名)
- wfindent (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 4.3.7
## 项目历史与用法

findent is a command-line indenter, formatter, converter, relabeler, and dependency helper for Fortran source code.

It matters to package users because Fortran tooling often lives in long-lived scientific and engineering codebases, where a small formatter that understands fixed and free form source is more useful than a general-purpose beautifier.

### 项目历史

The official site describes findent as a program to indent and relabel Fortran sources, with conversion between fixed and free form in both directions. The design document says the program became more complex than originally expected, leading to written documentation of its internals.

The design objectives emphasize reliability for serious projects involving large Fortran programs. findent deliberately reads from standard input and writes to standard output, avoids configuration files, and is controlled by command-line options plus an environment variable.

The changelog shows the tool growing from indentation into broader Fortran maintenance support: relabeling, OpenMP awareness, dependency generation through --deps and --makefdeps, editor integration, Debian compliance work, and continued handling of older dialect constructs.

### 采用历史

findent's adoption is rooted in the Fortran ecosystem rather than the general developer-tool mainstream. It appears where users need repeatable formatting for legacy and modern Fortran, including fixed-form sources and code using older extensions.

The project ships wrappers and editor integration for vim, emacs, and gedit, which is strong evidence that its intended users include people editing real Fortran projects rather than only running one-off conversions.

Its presence in Homebrew, Debian, Ubuntu, and Nix reflects a cross-platform scientific-programming tool that package managers keep available because rebuilding or maintaining Fortran code often depends on small specialized utilities.

### 使用方式

Basic use is intentionally Unix-like: run `findent < program.f90 > newprogram.f90`, with automatic detection of fixed or free format where possible.

Users can tune indentation categories from the command line, convert between fixed and free forms, relabel source, refactor END statements, and generate dependency information for build systems.

The design document says findent uses no configuration files; options come from command-line parameters and an environment variable, which keeps package installation simple and avoids per-user config discovery.

### 为什么软件包爱好者会关心

findent is the kind of niche compiler-adjacent tool package managers are good at preserving: tiny executable surface, real language knowledge, and disproportionate value for legacy code maintainers.

Its support for stdin/stdout, wrappers, editor integrations, and dependency-generation flags makes it useful in scripts, editor hooks, and build systems without needing a larger Fortran IDE.

### 时间线

- 1.2: Early archived release listed in official SourceForge files.
- 2.8.0: Changelog notes `! findentfix` and documentation cleanup.
- 2.8.5: OpenMP awareness implemented.
- 3.0.0: Dependency generation added with --deps and --makefdeps.
- 4.1.x: Relabeling and additional editor/wrapper improvements documented.
- 2024: Design and usage document published on the official site.
- 2026: 4.3.7 release files published on SourceForge.

### Related projects

- findent is related to Fortran compilers, editor integrations for vim/emacs/gedit, build dependency tools, and other Fortran source formatters.
- It sits near formatter and refactoring utilities rather than language servers or full IDEs.

### 来源

- <https://www.ratrabbit.nl/ratrabbit/findent/index.html>
- <https://www.ratrabbit.nl/ratrabbit/findent/design_and_usage/index.html>
- <https://www.ratrabbit.nl/ratrabbit/findent/changelog/index.html>
- <https://www.ratrabbit.nl/ratrabbit/findent/man_page/index.html>
- <https://sourceforge.net/projects/findent/files/>
- <https://sourceforge.net/p/findent/code/HEAD/tree>


## 安全说明

narrow executable package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- narrow executable package without higher-risk signals

## 其他软件包管理器记录

- Debian apt - findent - 4.3.5-1: normalized package name match | Debian stable package indexes: findent from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | indents/converts Fortran sources | https://sourceforge.net/projects/findent/
- Nix - findent: normalized package name match | nixpkgs package indexes: pkgs/by-name/fi/findent/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - findent - 4.3.2-1: normalized package name match | Ubuntu 24.04 LTS package indexes: findent from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | indents/converts Fortran sources | https://sourceforge.net/projects/findent/


## Combined YAML source

View the package source record on GitHub. [combined/findent.yml](https://github.com/mxcl/pkgdb/blob/main/combined/findent.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
