NOTICE, (since 2021/03/27) current gotk3_gtksource version comply with new gotk3 requirements, (that mean gotk3 version must be > 0.5.2) so you have to use Go bindings for GTK3 @ master from gotk3 repository instead of Release GOTK3 Version 0.5.2.
Golang GtkSourceView binding for use with gotk3
All this project was made under MIT license *
This repository must be used with gotk3: Go bindings for GTK3 only.
- Example of GtkSourceView usage in Go: SourceViewSimpleExample
- More complex example in Go: SourceViewExample
installation:
- Ubuntu linux only ** see at bottom why.
- Designed to be used with gtk3 >= 3.16 and gtksourceview >=3.18-4
- Be sure you have latest gotk3 installed correctly and working right.
- Use classic command:
go get github.com/hfmrow/gotk3_gtksource/source
for current Gtk3 v3.24, (Ubuntu focal). See below for specific versions. - Golang GtkSourceView follows the same rules as gotk3 for compiling different versions of gtksourceview.
Information about libgtksourceview versions:
Since libgtksourceview-3.0-dev start at GTK >= 3.16, minimal GtkSourceView version is limited to: libgtksourceview >= 3.18
Library Installation (Ubuntu):
xenial (16.04LTS), bionic (18.04LTS)
$ sudo apt install libgtksourceview-3.0-dev
focal (20.04LTS) this version of Ubuntu may use libgtksourceview-3.0-dev too
$ sudo apt install libgtksourceview-4-dev
To install targeting your version of GtkSourceView:
$ go get -tags gtksourceview_4 github.com/hfmrow/gotk3_gtksource/source or: $ go get -tags gtksourceview_3_18 github.com/hfmrow/gotk3_gtksource/source
To rebuild the package for another GtkSourceView version:
$ go install -tags gtksourceview_X_XX github.com/hfmrow/gotk3_gtksource/source
Gotk3 GtkSourceView wrapping progression
what for ?, check this out: GtkSourceView
-
GtkSourceBuffer — Subclass of GtkTextBuffer
-
GtkSourceView — Subclass of GtkTextView
-
GtkSourceLanguage — Represents a syntax highlighted language
-
GtkSourceLanguageManager — Provides access to GtkSourceLanguages
-
GtkSourceStyle — Represents a style
-
GtkSourceStyleScheme — Controls the appearance of GtkSourceView
-
GtkSourceStyleSchemeManager — Provides access to GtkSourceStyleSchemes
-
GtkSourceStyleSchemeChooser — Interface implemented by widgets for choosing style schemes
-
GtkSourceStyleSchemeChooserButton — A button to launch a style scheme selection dialog
-
GtkSourceStyleSchemeChooserWidget — A widget for choosing style schemes
-
GtkSourceCompletion — Main Completion Object
-
GtkSourceCompletionContext — The context of a completion
-
GtkSourceCompletionInfo — Calltips object
-
GtkSourceCompletionItem — Simple implementation of GtkSourceCompletionProposal
-
GtkSourceCompletionProposal — Completion proposal interface
-
GtkSourceCompletionProvider — Completion provider interface
-
GtkSourceCompletionWords — A GtkSourceCompletionProvider for the completion of words
-
GtkSourceGutter — Gutter object for GtkSourceView
-
GtkSourceGutterRenderer — Gutter cell renderer
-
GtkSourceGutterRendererPixbuf — Renders a pixbuf in the gutter
-
GtkSourceGutterRendererText — Renders text in the gutter
-
GtkSourceMark — Mark object for GtkSourceBuffer
-
GtkSourceMarkAttributes — The source mark attributes object
- GtkSourcePrintCompositor — Compose a GtkSourceBuffer for printing
-
GtkSourceSearchContext — Search context
-
GtkSourceSearchSettings — Search settings
- GtkSourceEncoding — Character encoding
-
GtkSourceMap — Widget that displays a map for a specific GtkSourceView
-
GtkSourceRegion — Region utility
-
GtkSourceSpaceDrawer — Represent white space characters with symbols
-
GtkSourceTag — A tag that can be applied to text in a GtkSourceBuffer
-
GtkSourceUndoManager — Undo manager interface for GtkSourceView
-
GtkSourceUtils — Utility functions
-
Version Information — Macros and functions to check the GtkSourceView version
Not fully wrapped but usable (implementation stopped)
- async operations are not wrapped
This class is no longer maintained, patches are not accepted. There is a better implementation in the Tepl library.
- GtkSourceFile — On-disk representation of a GtkSourceBuffer
- GtkSourceFileLoader — Load a file into a GtkSourceBuffer
- GtkSourceFileSaver — Save a GtkSourceBuffer into a file
Informations, Documentation: GtkSourceView
(*) Why the MIT license, simply because the ISC license type is not available in the repository creation choices. This repository is designed in the spirit of the original definition of the gotk3 LICENSE before this one.
(**) Why Ubuntu Linux only … because i really don’t know how to explain and deploy it on window, darwin and other Linux distros, i’m sorry. If you are able to doing that, you’re welcome. All information are available at Ubuntu - libgtksourceview. Theoretically, sourceview 4 may work on amd64 arm64 armhf i386 ppc64el s390x, sourceview 3.0 amd64 arm64 armhf i386 powerpc ppc64el s390x both depending on OS version.