forked from Shinonome/dots-hyprland
ai: tweak gtk sourceview properties
This commit is contained in:
@@ -49,7 +49,12 @@ const HighlightedCode = (content, lang) => {
|
|||||||
const buffer = new GtkSource.Buffer();
|
const buffer = new GtkSource.Buffer();
|
||||||
const sourceView = new GtkSource.View({
|
const sourceView = new GtkSource.View({
|
||||||
buffer: buffer,
|
buffer: buffer,
|
||||||
wrap_mode: Gtk.WrapMode.NONE
|
wrap_mode: Gtk.WrapMode.NONE,
|
||||||
|
insertSpacesInsteadOfTabs: true,
|
||||||
|
indentWidth: 4,
|
||||||
|
tabWidth: 4,
|
||||||
|
smartHomeEnd: true,
|
||||||
|
smartBackspace: true,
|
||||||
});
|
});
|
||||||
const langManager = GtkSource.LanguageManager.get_default();
|
const langManager = GtkSource.LanguageManager.get_default();
|
||||||
let displayLang = langManager.get_language(substituteLang(lang)); // Set your preferred language
|
let displayLang = langManager.get_language(substituteLang(lang)); // Set your preferred language
|
||||||
@@ -176,6 +181,13 @@ const CodeBlock = (content = '', lang = 'txt') => {
|
|||||||
const codeBlock = Box({
|
const codeBlock = Box({
|
||||||
attribute: {
|
attribute: {
|
||||||
'updateText': (text) => {
|
'updateText': (text) => {
|
||||||
|
// Enable useful features for multi-line code
|
||||||
|
if (text.split('\n').length > 1) {
|
||||||
|
sourceView.autoIndent = true;
|
||||||
|
sourceView.highlightCurrentLine = true;
|
||||||
|
sourceView.showLineNumbers = true;
|
||||||
|
sourceView.showLineMarks = true;
|
||||||
|
}
|
||||||
sourceView.get_buffer().set_text(text, -1);
|
sourceView.get_buffer().set_text(text, -1);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -374,3 +374,7 @@ widget {
|
|||||||
.spinbutton-reset:active {
|
.spinbutton-reset:active {
|
||||||
background-color: $layer2Active;
|
background-color: $layer2Active;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
textview {
|
||||||
|
caret-color: $onBackground;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user