1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584
|
2021-10-20 Theppitak Karoonboonyanan <theppitak@gmail.com>
* NEWS:
=== Version 0.1.5 ===
2021-10-19 Theppitak Karoonboonyanan <theppitak@gmail.com>
Modify rare keys of Pattachote keymap.
As discussed with @sirn@mastodon.in.th, some keys in
Pattachote are rarely used and unsettled among platforms.
We can make use of them for extra Thai characters.
https://lemmy.ml/post/81580
- QWERTY grave: MacOS=[฿,]; Windows=[_,฿]
We choose Windows layout, but replace the rarely used '_' with 'ๅ'.
- QWERTY digit one: MacOS=[,]; Windows=[=,+]
Just like how [ฃ,ฅ] is placed upon QWERTY [\,|] in Ketmanee,
we choose to place it here for Pattachote.
- QWERTY B: MacOS=Windows=[SARA I, MAI HAN AKAT]
MAI HAN AKAT here duplicates the QWERTY g key and is rarely used.
It is just a legacy from typewriter key MAI HAN AKAT + MAI THO.
We choose to place YAMAKKAN here instead.
* src/thaikb.c (pattachote_keycode_map):
- QWERTY grave: [_,฿] -> [ๅ,฿]
- QWERTY digit one: [=,+] -> [ฃ,ฅ]
- QWERTY B: [SARA I, MAI HAN AKAT] -> [SARA I, YAMAKKAN]
Thanks Kridsada Thanabulpong (@sirn@mastodon.in.th) for the
informative inputs.
2021-10-14 Theppitak Karoonboonyanan <theppitak@gmail.com>
Revise descriptions in GSettings schema.
* data/dconf/org.freedesktop.ibus.libthai.gschema.xml:
- Add details on Thai keyboard layouts and ISC modes.
- Add 'gettext-domain' attribute for translation.
* po/POTFILES.in:
- Drop main engine files which do not contain messages.
- Classify sources with comments.
- Add gschema file.
2021-10-12 Theppitak Karoonboonyanan <theppitak@gmail.com>
Switch from IBusConfig to GSettings.
IBusConfig failed somhow to save configs, and even IBus core
itself has switched to GSettings.
* configure.ac, data/Makefile.am, +data/dconf/,
+data/dconf/Makefile.am,
+data/dconf/org.freedesktop.ibus.libthai.gschema.xml:
- Add GSettings schema.
* src/engine_const.h:
- Replace CONFIG_SECTION macro with CONFIG_SCHEMA.
- Redefine CONFIG_* keys according to GSettings convention.
* src/ibus_config.h, src/ibus_config.c:
- Rewrite ibus_libthai_read_config() and ibus_libthai_write_config()
to use GSettings.
- Drop set_default_config(), as we always read full config anyway.
* src/engine.h, src/engine.c:
- Replace ibus_config global var with ibus_libthai_settings.
- Rewrite ibus_libthai_init() to use GSettings. With this,
the IBusBus arg is dropped.
- Update ibus_libthai_read_config() call with the GSettings version.
- [ibus_libthai_engine_init, config_value_changed_cb]
Replace IBusConfig "value-changed" signal handler with that for
GSettings "changed" signal.
* src/main.c (init):
- Update ibus_libthai_init() call with the arg-less version.
* setup/setup.c (main):
- Replace IBusConfig uses with GSettings.
2021-10-11 Theppitak Karoonboonyanan <theppitak@gmail.com>
Add data subdir and move icons under it.
* configure.ac, Makefile.am, +data/, +data/Makefile.am:
- Add data subdir.
* configure.ac, data/Makefile.am, icons/* -> data/icons/*:
- Move icons subdir to be under data.
2021-10-10 Theppitak Karoonboonyanan <theppitak@gmail.com>
Watch config changes instead of reloading ibus.
* src/engine.c (+config_value_changed_cb, ibus_libthai_engine_init):
- Watch config and trap "value-changed" signal from IBusConfig
with a callback that reads the changed value.
* setup/setup.c (entries, main):
- Drop call to force_engine_to_reload_config().
- Drop now-unused '--engine' and '-x' option.
* src/ibus_config.h, src/ibus_config.c (-force_engine_to_reload_config):
- Drop now-unused function.
2021-10-08 Theppitak Karoonboonyanan <theppitak@gmail.com>
Add Manoonchai keymap.
Some keys are currently omitted, such as '×' and '÷', until
we support non-TIS-620 chars.
* src/thaikb.h, src/thaikb.c (+THAI_KB_MANOONCHAI,
+manoonchai_keycode_map, thai_keycode_map, thai_map_keycode):
- Add Manoonchai keycode table.
* src/dlg_setup.c (ibus_libthai_setup_dialog_new,
ibus_libthai_setup_set_values, ibus_libthai_setup_get_values):
- Add "Manoonchai" keyboard layout radio button,
with get/set functions.
2021-09-19 Theppitak Karoonboonyanan <theppitak@gmail.com>
Fix some keys in Pattachote key map.
Some keys are not explicitly mentioned in Pattachote tutorials.
This fix is to make it more compatible with most implementations.
* src/thaikb.c (pattachote_keycode_map):
- Shift + CHO CHOE = LU (previously comma)
- QWERTY '\' = PHINTHU (previously LAKKHANGYAO)
- Shift + SARA I = MAI HAN AKAT (previously PHINTHU)
For discussion, see: https://lemmy.ml/post/81580
2021-09-18 Theppitak Karoonboonyanan <theppitak@gmail.com>
Swap keymap indexing order for managability.
* src/thaikb.c
(tis_keycode_map, ketmanee_keycode_map, pattachote_keycode_map):
- Index keycode before shift level.
- Introduce N_LEVELS macro rather than hard coding.
* src/thaikb.c (thai_keycode_map, thai_map_keycode):
- Reorder indexing accordingly.
2021-09-18 Theppitak Karoonboonyanan <theppitak@gmail.com>
Replace hex codes in keymaps with characters.
* src/thaikb.c
(tis_keycode_map, ketmanee_keycode_map, pattachote_keycode_map):
- Replace hex codes for Latin characters with char literals.
- Replace hex codes for Thai characters with TIS_* macros.
2019-12-20 Theppitak Karoonboonyanan <theppitak@gmail.com>
Use GitHub issue tracker as bug report address.
* configure.ac:
- Replace bug report e-mail address with GitHub issue tracker URL.
2018-02-19 Theppitak Karoonboonyanan <theppitak@gmail.com>
Update my e-mail address in POT
* po/Makevars:
- Update my e-mail address to the gmail one.
2017-09-12 Theppitak Karoonboonyanan <theppitak@gmail.com>
Get dummy surrounding text on engine enabling
* src/engine.c (+ibus_libthai_engine_enable,
ibus_libthai_engine_class_init):
- Issue a dummy ibus_engine_get_surrounding_text() call when
engine is enabled, to tell input context that the engine will
utilize surrounding text, according to IBus reference manual.
2016-12-31 Theppitak Karoonboonyanan <theppitak@gmail.com>
* NEWS:
=== Version 0.1.4 ===
2016-12-29 Theppitak Karoonboonyanan <theppitak@gmail.com>
Drop unused code
* src/engine.c (-keyval_to_tis):
* src/thaikb.h, src/thaikb.c (-thai_map_qwerty, -tis_qwerty_map,
-pattachote_qwerty_map, ketmanee_qwerty_map):
- Drop unused functions & variables.
2016-12-29 Kridsada Thanabulpong <sirn@ogsite.net>
Fix incorrect keys in Pattachote layout.
* src/thaikb.c (pattachote_keycode_map):
- 0xEA (Mai Tri) -> 0xEB (Mai Chattawa)
- 0xD2 (Sara Aa) -> 0xD3 (Sara Am)
2016-12-29 Theppitak Karoonboonyanan <theppitak@gmail.com>
Use versioning based on Git snapshot.
* Makefile.am:
- Add dist-hook to generate VERSION file on tarball generation.
* Makefile.am, +build-aux/git-version-gen:
- Add script to generate version based on 'git describe'
if in git tree, or using VERSION file if in release tarball.
* configure.ac:
- Call git-version-gen to get package version.
2016-03-28 Theppitak Karoonboonyanan <theppitak@gmail.com>
* configure.ac, NEWS:
=== Version 0.1.3 ===
2016-01-22 Theppitak Karoonboonyanan <theppitak@gmail.com>
Replace deprecated GtkMisc alignment functions.
* setup/dlg_setup.c (ibus_libthai_setup_dialog_new):
- Replace deprecated gtk_misc_set_alignment() (since GTK+ 3.16)
with gtk_label_set_xalign() and gtk_label_set_yalign().
* configure.ac:
- Require GTK+ >= 3.16.
2016-01-22 Theppitak Karoonboonyanan <theppitak@gmail.com>
Replace deprecated GtkWidget margin functions.
* setup/dlg_setup.c (ibus_libthai_setup_dialog_new):
- Replace deprecated gtk_widget_set_margin_left() and
gtk_widget_set_margin_right() (since GTK+ 3.12) with
gtk_widget_set_margin_start() and gtk_widget_set_margin_end()
respectively.
* configure.ac:
- Require GTK+ >= 3.12.
2016-01-22 Theppitak Karoonboonyanan <theppitak@gmail.com>
Drop deprecated GtkStock.
* setup/dlg_setup.c (ibus_libthai_setup_dialog_new):
- Replace deprecated GTK_STOCK* (since GTK+ 3.10) with
literal labels, as suggested in the reference.
2016-01-22 Theppitak Karoonboonyanan <theppitak@gmail.com>
Add missing include
* src/ibus_config.c:
- Add missing include for system().
2016-01-21 Theppitak Karoonboonyanan <theppitak@gmail.com>
Update my e-mail address.
* AUTHORS, configure.ac, setup/*.[ch], src/*.[ch],
src/libthai.xml.in.in:
- Update my e-mail address.
2016-01-21 Theppitak Karoonboonyanan <theppitak@gmail.com>
* configure.ac:
- Post-release version suffix added.
2013-10-31 Theppitak Karoonboonyanan <thep@linux.thai.net>
* configure.ac, NEWS:
=== Version 0.1.2 ===
2013-10-31 Theppitak Karoonboonyanan <thep@linux.thai.net>
* po/th.po: Regenerated. Updated copyright years.
2013-10-30 Theppitak Karoonboonyanan <thep@linux.thai.net>
Allow typing Thai digits using numpad with CapsLock or level 3.
* src/engine.c (ibus_libthai_engine_process_key_event):
- Check for numpad keys with CapsLock or level 3 shift and translate
them to Thai digits.
- When a numpad keysym is got while NumLock is off, by means of
Shift modifier, it should get Arabic digit, not Thai.
2013-10-04 Theppitak Karoonboonyanan <thep@linux.thai.net>
Use "us,th" layout to allow Thai accelerators.
* src/libthai.xml.in.in:
* src/utils.c (ibus_libthai_get_component):
- Declare engine's keyboard layout as "us,th". This also allows
Thai UI accelerators (e.g. Alt-<FoFan>) while the engine is
active. (Note: the ideal solution should be to have the key event
handler translate the keycode with internal map. Unfortunately,
ibus_engine_forward_key_event() just doesn't work as expected.)
2013-09-07 Theppitak Karoonboonyanan <thep@linux.thai.net>
Use "us" layout to allow shortcut keys.
* src/libthai.xml.in.in:
* src/utils.c (ibus_libthai_get_component):
- Declare engine's keyboard layout as "us". This allows program
shortcut keys (e.g. Ctrl-W) while the engine is being active.
2013-09-07 Theppitak Karoonboonyanan <thep@linux.thai.net>
* configure.ac:
- Post-release version suffix added.
2013-07-11 Theppitak Karoonboonyanan <thep@linux.thai.net>
* configure.ac, NEWS:
=== Version 0.1.1 ===
2013-07-10 Theppitak Karoonboonyanan <thep@linux.thai.net>
Update icon.
* icons/ibus-libthai.svg:
- Use regular weight instead of bold face.
- Use gradient and outline to improve visibility on various
background colors.
- Unblur shadow and use alpha channel instead.
2013-07-03 Theppitak Karoonboonyanan <thep@linux.thai.net>
Use scancode mapping instead of keysym mapping.
* src/thaikb.h, src/thaikb.c (+thai_map_keycode):
- Add keycode-to-TIS mapping function, with the map tables.
* src/engine.c (+keycode_to_tis):
- Add the wrapper for mapping.
* src/engine.c (ibus_libthai_engine_process_key_event):
- Call keycode_to_tis(), with shift level, instead of
keyval_to_tis().
2013-07-03 Theppitak Karoonboonyanan <thep@linux.thai.net>
* configure.ac:
- Post-release version suffix added.
2013-02-19 Theppitak Karoonboonyanan <thep@linux.thai.net>
* NEWS:
=== Version 0.1.0 ===
2013-02-19 Theppitak Karoonboonyanan <thep@linux.thai.net>
Adjust README.
* README:
- Add that XKB symbols are also supported.
- A little wording adjustment.
2013-02-19 Theppitak Karoonboonyanan <thep@linux.thai.net>
Write README contents.
2013-02-18 Theppitak Karoonboonyanan <thep@linux.thai.net>
Switch to XZ tarball compression.
* configure.ac:
- Invoke AM_INIT_AUTOMAKE with dist-xz, no-dist-gzip options.
2013-02-18 Theppitak Karoonboonyanan <thep@linux.thai.net>
Adjust icon.
* icons/ibus-libthai.svg:
- Enlarge character.
- Convert text to path, so it does not require external font.
- Adjust color, add outline stroke, add drop shadow.
2013-02-18 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add missing file in distribution.
* icons/Makefile.am:
- Add ibus-libthai.svg to EXTRA_DIST.
2013-02-18 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add missing backslash in Makefile.
* src/Makefile.am:
- Add missing backslash at line end for source file list.
2013-01-29 Theppitak Karoonboonyanan <thep@linux.thai.net>
Bump libthai dep to 0.1.19.
* configure.ac:
- libthai 0.1.19 has been released, require it instead of SVN
snapshot.
2012-11-13 Theppitak Karoonboonyanan <thep@linux.thai.net>
Pass unhandled keysyms over to app.
* src/engine.c (ibus_libthai_engine_process_key_event):
- Return FALSE for unknown keysyms.
2012-11-13 Theppitak Karoonboonyanan <thep@linux.thai.net>
Remove usused code.
* src/engine.c (keyval_to_tis):
- Remove unused code.
2012-11-12 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add missing backslash.
* icons/Makefile.am: Add missing continuation backslash.
2012-11-08 Theppitak Karoonboonyanan <thep@linux.thai.net>
Fix config I/O for GConf.
* src/ibus_config.c
(ibus_libthai_read_config, ibus_libthai_write_config):
- Read/write gint32 and boolean, not bytes.
2012-11-08 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add dialog source for translation.
* po/POTFILES.in: Add setup/dlg.c.
2012-11-08 Theppitak Karoonboonyanan <thep@linux.thai.net>
Make preferences dialog scale with window size.
* src/dlg_setup.c (ibus_libthai_setup_dialog_new):
- Make widgets expand with container box.
- Drop GtkAlignment usage and use widget margins instead, so that
the children get expanded with the container.
- Add margins around dialog content area.
- Rearrange call sequence for each widget.
2012-11-08 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add tooltip to correct_input_checkbox.
* src/dlg_setup.c (ibus_libthai_setup_dialog_new):
- Add tooltip to correct_input_checkbox.
2012-11-07 Theppitak Karoonboonyanan <thep@linux.thai.net>
Get rid of GObject warnings of unref-ing non-GObject.
* src/engine.c (ibus_libthai_engine_commit_chars):
- Don't unref IBusText object, as GObject asserts that it's not
a GObject.
2012-11-07 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add preferences GUI for 'do_correct' flag.
* setup/dlg_setup.c:
- (ibus_libthai_setup_dialog_new): Add the checkbox widget.
- (ibus_libthai_setup_set_values): Set the checkbox state.
- (ibus_libthai_setup_get_values): Get the checkbox state.
2012-11-07 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add 'do_correct' config and validate with new libthai API.
* src/ibus_config.h (IBusLibThaiSetupOptions):
- Add 'do_correct' member.
* src/engine_const.h:
- Add CONFIG_DO_CORRECT config item name.
* src/ibus_config.c (set_default_config, ibus_libthai_read_config,
ibus_libthai_write_config):
- Set, read, write the new config member.
* configure.ac:
- Bump required libthai version to 0.1.18svn, the unreleased
development version. Let's bump it again once the new libthai is
released.
* src/engine.c:
- (IBusLibThaiEngine): Add 'do_correct' member.
- (ibus_libthai_engine_init): Initialize it.
- (+ibus_libthai_engine_get_prev_char): Added for retrieving
single-char context in case of no correction.
- (ibus_libthai_engine_process_key_event):
@ Add code for no-correction case.
@ For correction case, call the new libthai th_validate_leveled()
API so the input sequence is properly maintained for the
given strictness level.
2012-11-05 Theppitak Karoonboonyanan <thep@linux.thai.net>
Make Thai KB map types & vars consistent.
* src/thaikb.h, src/thaikb.c (ThaiKBMap, thai_map_qwerty):
- ThaiKBMode -> ThaiKBMap type.
- (thai_map_qwerty): layout -> map arg.
* src/ibus_config.h, src/ibus_config.c, setup/dlg_setup.c
(IBusLibThaiSetupOptions):
- thai_kb_mode -> thai_kb_map member.
* src/engine.c (IBusLibThaiEngine, keyval_to_tis):
- kb_layout -> kb_map member.
- thai_int_layout -> thai_kb_map arg.
2012-11-05 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add setup UI (WIP).
Known problem: ibus config fails (with DBus errors) to read/write
with ibus 1.4.1-8 on Debian.
* configure.ac, src/Makefile.am, +src/engine_const.h,
+src/ibus_config.h, +src/ibus_config.c:
- Add common code as static lib for reading/writing configurations.
- This also requires AC_PROG_RANLIB in configure.
* configure.ac, Makefile.am, +setup/Makefile.am, +setup/setup.c,
+setup/dlg_setup.h, +setup/dlg_setup.c:
- Add GUI for preferences setup.
- This also requires gtk+-3.0 in configure.
* src/engine.c, src/engine.h, src/main.c:
- Add kb_layout member to IBusLibThaiEngine.
- Read config for keyboard layout and ISC mode.
* src/engine.c (keyval_to_tis, ibus_libthai_engine_process_key_event),
src/thaikb.h, src/thaikb.c (thai_map_qwerty, -thai_set_keyboard):
- (keyval_to_tis) takes keyboard layout as argument.
- (ibus_libthai_engine_process_key_event) calls keyval_to_tis with
engine's keyboard layout config.
- (thai_map_qwerty) takes keyboard layout as argument and look up
keys with two-dimensional array.
- (thai_set_keyboard) is now obsolete.
* src/libthai.xml.in.in:
- Add 'setup' element.
2012-11-04 Theppitak Karoonboonyanan <thep@linux.thai.net>
Reformat hex numbers in key map.
* src/thaikb.c (ketmanee_qwerty_map, pattachote_qwerty_map,
tis_qwerty_map):
- Reformat hex numbers to two-digit lower cases.
2012-11-04 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add Pattachote key map.
* src/thaikb.h (enum _ThaiKBMode):
* src/thaikb.c (pattachote_qwerty_map, thai_set_keyboard):
- Add Pattachote QWERTY-to-TH map.
2012-11-04 Theppitak Karoonboonyanan <thep@linux.thai.net>
Fix missing quotation marks in XML.
* src/libthai.xml.in.in:
- Escape quotation marks so they get preserved on shell evaluation.
2012-11-03 Theppitak Karoonboonyanan <thep@linux.thai.net>
Do the most likely case first for key mapping.
* src/engine.c (keyval_to_tis):
- Check & convert English keysyms first.
2012-11-02 Theppitak Karoonboonyanan <thep@linux.thai.net>
Add internal QWERTY-to-TH keyboard mapping.
* src/Makefile.am, +src/thaikb.h, +src/thaikb.c:
- Add internal QWERTY-to-TH keyboard mapping.
* src/engine.c (keyval_to_tis):
- If keyval is in English range, map it to Thai TIS-620 char.
2012-11-02 Theppitak Karoonboonyanan <thep@linux.thai.net>
* First working version.
2011-12-13 Theppitak Karoonboonyanan <thep@linux.thai.net>
* First create the project.
|