pkg.sopackage field notes

brew / 排名 10659

使用 Homebrew 安装 peg

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

安装

其他安装命令

macOS

Homebrew已验证 · 100%
brew install peg

provider-native install command

概览

软件包摘要

Program to perform pattern matching on text

命令和别名

  • leg
  • peg

历史

项目历史与用法

peg and leg are recursive-descent parser generators for C. They process Parsing Expression Grammars and generate C parsers, with `peg` following Bryan Ford's original PEG syntax and `leg` using conventions intended as an alternative to lex and yacc.

项目历史

Ian Piumarta's official page lists peg/leg as tools for generating recursive-descent parsers from Parsing Expression Grammars. The first public release in the official version history is 0.1.1 on 2007-05-15.

The manual page explains that peg reads grammar files or standard input and generates C source defining `yyparse()`, while leg uses a syntax intended to make it attractive to users familiar with lex and yacc workflows.

The official version history shows steady maintenance through 0.1.19 stable in 2023, including reentrant parsing support, error actions, UTF-8 fixes, C++ support improvements, and Windows/Mac build files.

采用历史

peg/leg spread through Unix-like package managers as a small C parser-generation tool: the input metadata lists Homebrew, Debian, Ubuntu, Arch, MacPorts, Nix, Alpine, and openSUSE package names.

Its niche is smaller than yacc-family tools, but it remains useful where a project wants PEG-style ordered choice, unlimited backtracking, and combined scanning and parsing in generated C.

使用方式

Typical use is to run `peg` or `leg` over a grammar file and compile or include the generated C source in a client program.

The official manual documents options such as `-o` for output file selection, `-P` for suppressing `#line` directives, `-v` for verbose mode, and `-V` for version output.

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

peg/leg is package-manager-friendly because it is a compact C command-line tool with a stable manual page, source tarballs, and a long version history.

For package nerds it is also a useful contrast with lex/yacc: a small PEG-based generator that produces embeddable C parsers without requiring a larger parser framework.

时间线

  • 2007-05-15: First public release, 0.1.1.
  • 2013-06-03: 0.1.11 added error actions, C++ support improvements, and Win32/Mac build files.
  • 2016-07-22: 0.1.18 added the `-P` option to disable `#line` directives.
  • 2023-03-06: 0.1.19 stable added experimental re-entrant parsing through `yyparsefrom_r()`.
  • 2023-11-19: 0.1.20 development version listed with experimental inline-action variables and semantic values.

Related projects

  • Bryan Ford's 2004 Parsing Expression Grammars paper is the formal grammar reference cited by the official page.
  • lex and yacc are the comparison point used by the official page and manual.

安全态势

风险级别:绿色

narrow executable package without higher-risk signals.

风险分类器

绿色 风险 · 低 置信度 · appliance

原因

  • narrow executable package without higher-risk signals

信号

  • metadata:no-higher-risk-signals

安装行为

  • 未记录 Homebrew bottle 元数据。

建议审查

在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。

可执行文件

已安装的可执行文件

命令类型暴露范围备注
leg可执行文件已索引可执行文件从本地可执行文件索引发现。
peg可执行文件已索引可执行文件从本地可执行文件索引发现。

新鲜度

版本和新鲜度

这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。

页面生成时间2026-08-03
管理器版本0.1.19
管理器更新时间2026-06-14
本地数据未知
上游不可用
检测到的最新版本未检测到
  • OK没有生成新鲜度警告。

安装元数据

软件包元数据

软件包键brew:peg
版本0.1.19
软件包管理器Homebrew
主页https://www.piumarta.com/software/peg/
最后更新2026-06-14T14:47:59+02:00
Pulseupdated
Bottle未记录
服务未声明

来源线索

由仓库数据生成

此页面由 av-webscripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。

使用的来源

  • Geiger risk classifier
  • Nucleus package database
  • curated package history
  • pkgdb category and tag curation