MCPcopy Create free account
hub / github.com/BuddySirJava/SSH-Studio / _setup_syntax_highlighting

Method _setup_syntax_highlighting

src/ui/host_editor.py:1990–2042  ·  view source on GitHub ↗

Setup syntax highlighting for the raw text editor.

(self)

Source from the content-addressed store, hash-verified

1988 self.buffer.apply_tag(self.tag_changed, start_iter, end_iter)
1989
1990 def _setup_syntax_highlighting(self):
1991 """Setup syntax highlighting for the raw text editor."""
1992 if not self.raw_text_view:
1993 return
1994
1995 try:
1996 source_buffer = self.raw_text_view.get_buffer()
1997 if not source_buffer:
1998 return
1999
2000 self.buffer = source_buffer
2001
2002 if not isinstance(source_buffer, GtkSource.Buffer):
2003 return
2004
2005 language_manager = GtkSource.LanguageManager.get_default()
2006
2007 ssh_language_ids = [
2008 "ssh-config",
2009 "ssh_config",
2010 "sshconfig",
2011 "ssh",
2012 "config",
2013 "ini",
2014 ]
2015
2016 language = None
2017 for lang_id in ssh_language_ids:
2018 language = language_manager.get_language(lang_id)
2019 if language:
2020 break
2021
2022 if not language:
2023 language = language_manager.get_language(
2024 "ini"
2025 ) or language_manager.get_language("config")
2026
2027 if language:
2028 source_buffer.set_language(language)
2029
2030 style_manager = GtkSource.StyleSchemeManager.get_default()
2031 style_scheme = (
2032 style_manager.get_scheme("dark")
2033 or style_manager.get_scheme("Adwaita-dark")
2034 or style_manager.get_scheme("default")
2035 )
2036
2037 if style_scheme:
2038 source_buffer.set_style_scheme(style_scheme)
2039
2040 except Exception as e:
2041 print(f"Warning: Could not setup syntax highlighting: {e}")
2042 pass

Callers 1

__init__Method · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected