我正在开发一个包含文本编辑器并将用于编程的程序(这意味着字体是等宽的并且在整个文本中具有相同的大小)。因此,如果可以在 TextView 小部件的一侧看到每行(段落,而不是显示行)的编号,那将很有用。
在另一个问题(文本视图的 GTK+ 行编号)中,据说 SourceView 小部件完成了这项工作,但这个小部件似乎在 gtk2hs 中不存在,所以我坚持使用 TextView。
图书馆是否为这个问题提供了一个简单的解决方案,还是我必须以艰难的方式去做?
我正在开发一个包含文本编辑器并将用于编程的程序(这意味着字体是等宽的并且在整个文本中具有相同的大小)。因此,如果可以在 TextView 小部件的一侧看到每行(段落,而不是显示行)的编号,那将很有用。
在另一个问题(文本视图的 GTK+ 行编号)中,据说 SourceView 小部件完成了这项工作,但这个小部件似乎在 gtk2hs 中不存在,所以我坚持使用 TextView。
图书馆是否为这个问题提供了一个简单的解决方案,还是我必须以艰难的方式去做?
SourceView
在Haskell 和 Gtk2Hs 中使用带编号行的极简代码是:
import Graphics.UI.Gtk
import Graphics.UI.Gtk.SourceView
main :: IO ()
main= do
initGUI
window <- windowNew
set window [ windowTitle := "SourceView"
, windowDefaultWidth := 100
, windowDefaultHeight := 100
, windowResizable :=True ]
sview <- sourceViewNew
sourceViewSetShowLineNumbers sview True
containerAdd window sview
onDestroy window mainQuit
widgetShowAll window
mainGUI