class Gtk::IMContextSimple

Overview

Gtk::IMContextSimple is an input method supporting table-based input methods.

Compose sequences

Gtk::IMContextSimple reads compose sequences from the first of the following files that is found: ~/.config/gtk-4.0/Compose, ~/.XCompose, /usr/share/X11/locale/$locale/Compose (for locales that have a nontrivial Compose file). The syntax of these files is described in the Compose(5) manual page.

If none of these files is found, Gtk::IMContextSimple uses a built-in table of compose sequences that is derived from the X11 Compose files.

Note that compose sequences typically start with the Compose_key, which is often not available as a dedicated key on keyboards. Keyboard layouts may map this keysym to other keys, such as the right Control key.

Unicode characters

Gtk::IMContextSimple also supports numeric entry of Unicode characters by typing Ctrl-Shift-u, followed by a hexadecimal Unicode codepoint.

For example,

Ctrl-Shift-u 1 2 3 Enter

yields U+0123 LATIN SMALL LETTER G WITH CEDILLA, i.e. ģ.

Dead keys

Gtk::IMContextSimple supports dead keys. For example, typing

dead_acute a

yields U+00E! LATIN SMALL LETTER_A WITH ACUTE, i.e. á. Note that this depends on the keyboard layout including dead keys.

Defined in:

lib/gi-crystal/src/auto/gtk-4.0/im_context_simple.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class Gtk::IMContext

client_widget=(widget : Gtk::Widget?) : Nil client_widget=, commit_signal commit_signal, cursor_location=(area : Gdk::Rectangle) : Nil cursor_location=, delete_surrounding(offset : Int32, n_chars : Int32) : Bool delete_surrounding, delete_surrounding_signal delete_surrounding_signal, filter_key(press : Bool, surface : Gdk::Surface, device : Gdk::Device, time : UInt32, keycode : UInt32, state : Gdk::ModifierType, group : Int32) : Bool filter_key, filter_keypress(event : Gdk::Event) : Bool filter_keypress, focus_in : Nil focus_in, focus_out : Nil focus_out, input_hints : Gtk::InputHints input_hints, input_hints=(value : Gtk::InputHints) : Gtk::InputHints input_hints=, input_purpose : Gtk::InputPurpose input_purpose, input_purpose=(value : Gtk::InputPurpose) : Gtk::InputPurpose input_purpose=, preedit_changed_signal preedit_changed_signal, preedit_end_signal preedit_end_signal, preedit_start_signal preedit_start_signal, preedit_string(str : String, attrs : Pango::AttrList, cursor_pos : Int32) : Nil preedit_string, reset : Nil reset, retrieve_surrounding_signal retrieve_surrounding_signal, set_surrounding(text : String, len : Int32, cursor_index : Int32) : Nil set_surrounding, set_surrounding_with_selection(text : String, len : Int32, cursor_index : Int32, anchor_index : Int32) : Nil set_surrounding_with_selection, surrounding(text : String, cursor_index : Int32) : Bool surrounding, surrounding_with_selection(text : String, cursor_index : Int32, anchor_index : Int32) : Bool surrounding_with_selection, use_preedit=(use_preedit : Bool) : Nil use_preedit=

Constructor methods inherited from class Gtk::IMContext

new
new(*, input_hints : Gtk::InputHints? = nil, input_purpose : Gtk::InputPurpose? = nil)
new

Class methods inherited from class Gtk::IMContext

g_type : UInt64 g_type

Instance methods inherited from class GObject::Object

bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding bind_property, bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding bind_property_full, data(key : String) : Pointer(Void)? data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, notify(property_name : String) : Nil notify, notify_by_pspec(pspec : GObject::ParamSpec) : Nil notify_by_pspec, notify_signal notify_signal, property(property_name : String, value : _) : Nil property, qdata(quark : UInt32) : Pointer(Void)? qdata, ref_count : UInt32 ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void)?) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void)? steal_data, steal_qdata(quark : UInt32) : Pointer(Void)? steal_qdata, thaw_notify : Nil thaw_notify, to_unsafe : Pointer(Void) to_unsafe, watch_closure(closure : GObject::Closure) : Nil watch_closure

Constructor methods inherited from class GObject::Object

cast(obj : GObject::Object) : self cast, cast?(obj : GObject::Object) : self? cast?, new(pointer : Pointer(Void), transfer : GICrystal::Transfer)
new
new
, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv

Class methods inherited from class GObject::Object

compat_control(what : UInt64, data : Pointer(Void)?) : UInt64 compat_control, g_type : UInt64 g_type, interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec interface_find_property, interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec) interface_list_properties

Constructor Detail

def self.new : self #

Creates a new Gtk::IMContextSimple.


def self.new(*, input_hints : Gtk::InputHints? = nil, input_purpose : Gtk::InputPurpose? = nil) #

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def add_compose_file(compose_file : String) : Nil #

Adds an additional table from the X11 compose file.