class Gtk::IMContextSimple

Overview

GtkIMContextSimple is an input method supporting table-based input methods.

Compose sequences

GtkIMContextSimple 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, GtkIMContextSimple 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

GtkIMContextSimple 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

GtkIMContextSimple 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, 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 GtkIMContextSimple.


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.