説明: https ://nixos.org/nix/manual/#ch -expression-language
https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/tools/misc/ctags/wrapped.nixにいくつかの非常に基本的な構成があり
--langdef=NIX
--langmap=NIX:.nix
--regex-NIX=/([^ \t*]*)[ \t]*=/\1/f/
私は(うまくいけば)これをローカルで少し改善しました:
--regex-NIX=/([^ \t*]*)[ \t]*=.*:/\1/f/
しかし、それはまだ基本的すぎて、おそらく別のパーサーが必要になるでしょう。
私はNix / NixOSを初めて使用するため、知識があまりありません。
この言語について私自身。
Nix自体が言語を解析します-標準の解析および字句解析ツールhttps://github.com/NixOS/nix/tree/master/src/libexprを使用し: //github.com/peti/language-nixのいくつかのものについて知ってい
初期バージョンとして、正規表現ベースの実装は問題ありません。 それは常に何もないよりはましです。
ディレクトリ構造を再考する必要がありますが、optlibはパーサーを実装するためのファーストクラスの方法です。
後でCベースのパーサーを作成できます。 重要な点は、正規表現間の「種類」の互換性です
ベースのパーサーとCベースのパーサー。 種類の互換性が保たれていれば、誰も実装の方法を気にしません。
ただし、nixの実装に実際のパーサーがある場合は、それを利用してみませんか? 私のxmcdはあなたのためです。
data / optlib /cofee.ctagsおよびlibexec / drivers / coffeetagsを参照してください。
こんにちは、この問題の状況はどうなっていますか?
プルリクエストは大歓迎です。
最も参考になるコメント
こんにちは、この問題の状況はどうなっていますか?