{"id":13667281,"url":"https://github.com/akimd/bison","last_synced_at":"2025-04-26T15:32:37.555Z","repository":{"id":40523685,"uuid":"147209438","full_name":"akimd/bison","owner":"akimd","description":"GNU Bison","archived":false,"fork":false,"pushed_at":"2022-10-25T16:13:18.000Z","size":18803,"stargazers_count":332,"open_issues_count":19,"forks_count":90,"subscribers_count":17,"default_branch":"master","last_synced_at":"2024-11-11T02:35:35.256Z","etag":null,"topics":["bison","gnu","parser-generator","yacc"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/akimd.png","metadata":{"files":{"readme":"README","changelog":"ChangeLog-1998","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-03T13:33:50.000Z","updated_at":"2024-10-23T08:32:32.000Z","dependencies_parsed_at":"2023-01-19T22:15:56.243Z","dependency_job_id":null,"html_url":"https://github.com/akimd/bison","commit_stats":null,"previous_names":[],"tags_count":131,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akimd%2Fbison","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akimd%2Fbison/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akimd%2Fbison/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akimd%2Fbison/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akimd","download_url":"https://codeload.github.com/akimd/bison/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251008840,"owners_count":21522185,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bison","gnu","parser-generator","yacc"],"created_at":"2024-08-02T07:00:34.369Z","updated_at":"2025-04-26T15:32:35.456Z","avatar_url":"https://github.com/akimd.png","language":"C","readme":"GNU Bison is a general-purpose parser generator that converts an annotated\ncontext-free grammar into a deterministic LR or generalized LR (GLR) parser\nemploying LALR(1) parser tables.  Bison can also generate IELR(1) or\ncanonical LR(1) parser tables.  Once you are proficient with Bison, you can\nuse it to develop a wide range of language parsers, from those used in\nsimple desk calculators to complex programming languages.\n\nBison is upward compatible with Yacc: all properly-written Yacc grammars\nwork with Bison with no change.  Anyone familiar with Yacc should be able to\nuse Bison with little trouble.  You need to be fluent in C, C++, D or Java\nprogramming in order to use Bison.\n\nBison and the parsers it generates are portable, they do not require any\nspecific compilers.\n\nGNU Bison's home page is https://gnu.org/software/bison/.\n\n# Installation\n## Build from git\nThe [README-hacking.md file](README-hacking.md) is about building, modifying\nand checking Bison.  See its \"Working from the Repository\" section to build\nBison from the git repo.  Roughly, run:\n\n    $ git submodule update --init\n    $ ./bootstrap\n\nthen proceed with the usual `configure \u0026\u0026 make` steps.\n\n## Build from tarball\nSee the [INSTALL file](INSTALL) for generic compilation and installation\ninstructions.\n\nBison requires GNU m4 1.4.6 or later.  See\nhttps://ftp.gnu.org/gnu/m4/m4-1.4.6.tar.gz.\n\n## Running a non installed bison\nOnce you ran `make`, you might want to toy with this fresh bison before\ninstalling it.  In that case, do not use `src/bison`: it would use the\n*installed* files (skeletons, etc.), not the local ones.  Use `tests/bison`.\n\n## Colored diagnostics\nAs an experimental feature, diagnostics are now colored, controlled by the\n`--color` and `--style` options.\n\nTo use them, install the libtextstyle library, 0.20.5 or newer, before\nconfiguring Bison.  It is available from https://alpha.gnu.org/gnu/gettext/,\nfor instance https://alpha.gnu.org/gnu/gettext/libtextstyle-0.20.5.tar.gz,\nor as part of Gettext 0.21 or newer, for instance\nhttps://ftp.gnu.org/gnu/gettext/gettext-0.21.tar.gz.\n\nThe option --color supports the following arguments:\n- always, yes: Enable colors.\n- never, no: Disable colors.\n- auto, tty (default): Enable colors if the output device is a tty.\n\nTo customize the styles, create a CSS file, say `bison-bw.css`, similar to\n\n    /* bison-bw.css */\n    .warning   { }\n    .error     { font-weight: 800; text-decoration: underline; }\n    .note      { }\n\nthen invoke bison with `--style=bison-bw.css`, or set the `BISON_STYLE`\nenvironment variable to `bison-bw.css`.\n\nIn some diagnostics, bison uses libtextstyle to emit special escapes to\ngenerate clickable hyperlinks.  The environment variable\n`NO_TERM_HYPERLINKS` can be used to suppress them.  This may be useful for\nterminal emulators which produce garbage output when they receive the escape\nsequence for a hyperlink. Currently (as of 2020), this affects some versions\nof emacs, guake, konsole, lxterminal, rxvt, yakuake.\n\n## Relocatability\nIf you pass `--enable-relocatable` to `configure`, Bison is relocatable.\n\nA relocatable program can be moved or copied to a different location on the\nfile system.  It can also be used through mount points for network sharing.\nIt is possible to make symlinks to the installed and moved programs, and\ninvoke them through the symlink.\n\nSee \"Enabling Relocatability\" in the documentation.\n\n## Internationalization\nBison supports two catalogs: one for Bison itself (i.e., for the\nmaintainer-side parser generation), and one for the generated parsers (i.e.,\nfor the user-side parser execution).  The requirements between both differ:\nbison needs ngettext, the generated parsers do not.  To simplify the build\nsystem, neither are installed if ngettext is not supported, even if\ngenerated parsers could have been localized.  See\nhttps://lists.gnu.org/r/bug-bison/2009-08/msg00006.html for more\ndetails.\n\n# Questions\nSee the section FAQ in the documentation (doc/bison.info) for frequently\nasked questions.  The documentation is also available in PDF and HTML,\nprovided you have a recent version of Texinfo installed: run `make pdf` or\n`make html`.\n\nIf you have questions about using Bison and the documentation does not\nanswer them, please send mail to \u003chelp-bison@gnu.org\u003e.\n\n# Bug reports\nPlease send bug reports to \u003cbug-bison@gnu.org\u003e.  Be sure to include the\nversion number from `bison --version`, and a complete, self-contained test\ncase in each bug report.\n\n# Copyright statements\nFor any copyright year range specified as YYYY-ZZZZ in this package, note\nthat the range specifies every single year in that closed interval.\n\n\u003c!--\n\nLocalWords:  parsers ngettext Texinfo pdf html YYYY ZZZZ ispell american md\nLocalWords:  MERCHANTABILITY GLR LALR IELR submodule init README src bw\nLocalWords:  Relocatability symlinks symlink\n\nLocal Variables:\nmode: markdown\nfill-column: 76\nispell-dictionary: \"american\"\nEnd:\n\nCopyright (C) 1992, 1998-1999, 2003-2005, 2008-2015, 2018-2022 Free\nSoftware Foundation, Inc.\n\nThis file is part of GNU bison, the GNU Compiler Compiler.\n\nPermission is granted to copy, distribute and/or modify this document\nunder the terms of the GNU Free Documentation License, Version 1.3 or\nany later version published by the Free Software Foundation; with no\nInvariant Sections, with no Front-Cover Texts, and with no Back-Cover\nTexts.  A copy of the license is included in the \"GNU Free\nDocumentation License\" file as part of this distribution.\n\n--\u003e\n","funding_links":[],"categories":["C"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakimd%2Fbison","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakimd%2Fbison","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakimd%2Fbison/lists"}