From b0aa809bb593ee34a4ad3ffa54ee933eedbf9599 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Tue, 9 Apr 2024 13:22:28 -0700 Subject: Check for shebangs with guile in them for lexing Scheme files --- cgit-pygments-wrapper | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/cgit-pygments-wrapper b/cgit-pygments-wrapper index ddc8dc2..2a9a4aa 100755 --- a/cgit-pygments-wrapper +++ b/cgit-pygments-wrapper @@ -19,13 +19,14 @@ from pygments import highlight from pygments.formatters import HtmlFormatter from pygments.lexers import ( CommonLispLexer, + SchemeLexer, TextLexer, + get_lexer_by_name, guess_lexer, guess_lexer_for_filename, - get_lexer_by_name, ) from pygments.lexers.shell import BashLexer -from pygments.util import ClassNotFound +from pygments.util import ClassNotFound, shebang_matches CommonLispLexer.filenames.append("*.asd") CommonLispLexer.filenames.append(".stumpwmrc") @@ -42,6 +43,8 @@ formatter = HtmlFormatter(encoding="utf-8", style="autumn") try: if filename == "CMakeLists.txt": lexer = get_lexer_by_name("cmake") + elif shebang_matches(data, r"guile"): + lexer = SchemeLexer else: lexer = guess_lexer_for_filename(filename, data, encoding="utf-8") except ClassNotFound: -- cgit v1.2.3-54-g00ecf