scim-im / scim Goto Github PK
View Code? Open in Web Editor NEWThe Smart Common Input Method platform
License: GNU Lesser General Public License v2.1
The Smart Common Input Method platform
License: GNU Lesser General Public License v2.1
Hi,
Debian's package checker, lintian, picked up some spelling errors in the source code. These are fixed in the attached patch. Apply it by renaming the file to end in .patch instead of .txt.
Thank you,
Hugh
reported at:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=356346
https://sourceforge.net/p/scim/bugs/171/
https://sourceforge.net/p/scim/bugs/111/
Package: scim-tables-zh
Version: 0.5.6-1
Severity: normal
Scim wubi input method can not output renminbi symbol "¥"。When I type shift+4,its output is dollar symbol SBC case "$“ or DBC case "$"。
I don't seem to be able to find this anywhere in the documentation, and also in the source, but I do have something called t-math-latex, which I don't really understand.
Could this be added to the documentation?
I have this issue with scim 1.4.15
Cannot load module /usr/lib64/gtk-3.0/3.0.0/immodules/im-scim.so: /usr/lib64/gtk-3.0/3.0.0/immodules/im-scim.so: undefined symbol: gdk_x11_drawable_get_xdisplay
/usr/lib64/gtk-3.0/3.0.0/immodules/im-scim.so does not export GTK+ IM module API: /usr/lib64/gtk-3.0/3.0.0/immodules/im-scim.so: undefined symbol: gdk_x11_drawable_get_xdisplay
When I am using GTK_IM_MODULE="scim" with gtk+3-3.14.12 and current scim, I get a segfault.
I can replicate this by:
# your scim setup, I am using:
scim -d # in .xinitrc
GTK_IM_MODULE="scim"
gtk3-demo # open "text-widget/multiple views" for example
Everything works fine with GTK_IM_MODULE="xim".
The (sorry) backtrace:
#0 0xffffffff in g_type_check_instance_is_fundamentally_a ()
at /usr/lib/libgobject-2.0.so.0
#1 0xffffffff in g_object_ref () at /usr/lib/libgobject-2.0.so.0
#2 0xffffffff in () at /usr/lib/gtk-3.0/3.0.0/immodules/im-scim.so
#3 0xffffffff in gtk_im_context_focus_in () at /usr/lib/libgtk-3.so.0
#4 0xffffffff in () at /usr/lib/libgtk-3.so.0
#5 0xffffffff in gtk_im_context_focus_in () at /usr/lib/libgtk-3.so.0
#6 0xffffffff in () at /usr/lib/libgtk-3.so.0
#7 0xffffffff in () at /usr/lib/libgtk-3.so.0
#8 0xffffffff in () at /usr/lib/libgobject-2.0.so.0
#9 0xffffffff in () at /usr/lib/libgobject-2.0.so.0
#10 0xffffffff in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#11 0xffffffff in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#12 0xffffffff in () at /usr/lib/libgtk-3.so.0
#13 0xffffffff in gtk_widget_send_focus_change () at /usr/lib/libgtk-3.so.0
#14 0xffffffff in () at /usr/lib/libgtk-3.so.0
#15 0xffffffff in () at /usr/lib/libgtk-3.so.0
#16 0xffffffff in () at /usr/lib/libgtk-3.so.0
#17 0xffffffff in () at /usr/lib/libgtk-3.so.0
#18 0xffffffff in () at /usr/lib/libgobject-2.0.so.0
#19 0xffffffff in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#20 0xffffffff in () at /usr/lib/libgobject-2.0.so.0
#21 0xffffffff in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#22 0xffffffff in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#23 0xffffffff in () at /usr/lib/libgtk-3.so.0
#24 0xffffffff in gtk_main_do_event () at /usr/lib/libgtk-3.so.0
#25 0xffffffff in () at /usr/lib/libgdk-3.so.0
#26 0xffffffff in () at /usr/lib/libgdk-3.so.0
#27 0xffffffff in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#28 0xffffffff in () at /usr/lib/libglib-2.0.so.0
#29 0xffffffff in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#30 0xffffffff in g_application_run () at /usr/lib/libgio-2.0.so.0
#31 0x08056662 in ()
#32 0x084d2078 in ()
#33 0xffffffff in __libc_start_main () at /lib/libc.so.6
#34 0x0805668a in ()
I am not really sure if it's scim but everything else works.
I am using Slackware-current and their configure flags (except paths) are:
./configure --disable-static \
--with-gtk-version=2
Hi, I have found a Gentoo QA notice:
/usr/share/scim/icons/menu.png: broken IDAT window length
The broken png files can be treated with pngfix.
Hi,
This may be related to #5, I'm not sure and I just observe the following crash when running GIMP (2.10.4)
#6 0x00007f508ad66de5 in IA__gdk_x11_drawable_get_xdisplay (drawable=0x54fc630) at /var/tmp/paludis/x11-libs-gtk+-2.24.31-r1/work/gtk+-2.24.31/gdk/x11/gdkdrawable-x11.c:908
drawable = 0x54fc630
#7 0x00007f50770d27ce in scim_bridge_key_event_gdk_to_bridge () from /usr/lib64/gtk-2.0/2.10.0/immodules/im-scim.so
No symbol table info available.
#8 0x00007f50770d21db in key_snooper () from /usr/lib64/gtk-2.0/2.10.0/immodules/im-scim.so
No symbol table info available.
#9 0x00007f50770d2454 in scim_bridge_client_imcontext_filter_key_event () from /usr/lib64/gtk-2.0/2.10.0/immodules/im-scim.so
No symbol table info available.
#10 0x00007f508b0bce62 in gtk_im_multicontext_filter_keypress (context=0x5609030, event=0x4c4fc40) at /var/tmp/paludis/x11-libs-gtk+-2.24.31-r1/work/gtk+-2.24.31/gtk/gtkimmulticontext.c:333
multicontext = 0x5609030
slave = <optimized out>
#11 0x00007f508b077623 in gtk_entry_key_press (widget=0x3134670, event=0x4c4fc40) at /var/tmp/paludis/x11-libs-gtk+-2.24.31-r1/work/gtk+-2.24.31/gtk/gtkentry.c:4073
entry = 0x3134670
SCIM is v1.4.18, built with --with-gtk-version={3,2}
(standard Gentoo build with gtk3 USE).
scim-pinyin got trouble with GNOME 3.20, so some work needed before GNOME 3.20. I think it's scim problem, is it right?
Here's my trouble suffering:
Here's photo: https://bugs.gentoo.org/attachment.cgi?id=434336&action=edit
ubuntu 2004系统
操作步骤:
SCIM_DEBUG_IMENGINE(2) << "engine debug info \n"
请问我应该怎么设置debug输出等级,将打印信息输出呢?
@tzhuan
The official inscript table for telugu is binding the key " _ " to the telugu sign "VISARGA" which code is 0C03, and sign is " ః ". This table in scim is binding " _ " to itself, i.e. " _ ", and there is no alternative binding to "VISARGA" sign. So it is not possible to input this sign with scim.
Forwarding comments from https://bugs.debian.org/1042759#37 :
On Mon, 31 Jul 2023 at 20:57:25 +0200, Michał Byrecki wrote:
> > (org.gnome.Nautilus:51577): GLib-GObject-WARNING **: 20:53:04.844:
> > invalid cast from 'GdkWaylandToplevel' to 'GdkX11Surface'
> >
> > (org.gnome.Nautilus:51577): GLib-GObject-WARNING **: 20:53:04.844:
> > invalid cast from 'GdkWaylandDisplay' to 'GdkX11Display'
These warnings indicate that a component is assuming that all windows
are X11 windows, and all displays are X11 displays; and that's also the
cause of the segfault, while calling XGetWindowAttributes on something
that is not a valid X11 window (probably a null pointer dereference).
> > #1 0x00007ffff070d467 in () at /usr/lib/x86_64-linux-gnu/gtk-4.0/4.0.0/immodules/libim-scim.so
This component seems to be the one that is making that assumption.
The bug affects multiple GTK 4 apps because it's a module that has been
loaded into GTK 4.
Looking at scim-gtk-immodule's GTK 4 code in
<https://github.com/scim-im/scim/commit/d35bf5d331d885e94914fea6eab9c56f20666c8d>,
it does things like this:
> #ifdef GDK_WINDOWING_X11
> GdkX11Display *display = NULL;
>
> if (widget != NULL) {
> display = GDK_X11_DISPLAY (gtk_widget_get_display(widget));
> } else {
> display = GDK_X11_DISPLAY (gdk_display_get_default ());
> }
That's not correct code: just because the X11 windowing system is
compiled into GTK, that doesn't mean it is the one currently in use. The
GdkDisplay object might be a GdkX11Display, but equally it might be a
GdkWaylandDisplay. (That's why GDK_BACKEND=x11 is a workaround for this,
because when that environment variable is set, the X11 windowing system
*is* the one in use.)
I haven't checked what scim-gtk-immodule does for GTK 3, but if it has the
same pattern there, it would be equally problematic for GTK 3.
The correct pattern is more like this:
GdkDisplay *display;
if (widget != NULL) {
display = gtk_widget_get_display (widget));
} else {
display = gdk_display_get_default ();
}
#ifdef GDK_WINDOWING_X11
if (GDK_IS_X11_DISPLAY (display) {
GdkX11Display *x11_display = GDK_X11_DISPLAY (display);
/* ... do X11 things with x11_display ... */
}
#endif
#ifdef GDK_WINDOWING_WAYLAND
if (GDK_IS_WAYLAND_DISPLAY (display) {
GdkWaylandDisplay *wayland_display = GDK_WAYLAND_DISPLAY (display);
/* ... do Wayland things with wayland_display ... */
}
#endif
Until scim-gtk-immodule is fixed, the workaround would be to either set
GDK_BACKEND=x11, or use an X11 desktop environment or a desktop environment
in X11 mode (like the "GNOME (Xorg)" option for GNOME), or remove
scim-gtk-immodule and use a different input method framework such as ibus.
What is the plan for scim with regards to Qt5?
was first reported on https://bugs.archlinux.org/task/52973
a little hard for me to summarize even several days later. i guess the way i'm currently looking at it is:
when launched as a daemon without the taskbar (lxpanel, tint2) scim works 100%.
when launched with lxpanel scim is not responsive by default. you get the icon, but the triggers don't work, mouse selection doesn't have any effect. but you can still make it work by launching from the terminal something like GTK_IM_MODULE="scim" leafpad.
But as i note on that archlinux bugs page it did seem to work with the lxpanel on the very fresh install with pretty much nothing but xorg scim and mousepad installed. Few commands later it got messed up. Will be more then happy to provide further details! Not really sure where to look for further info at the moment.
Before understanding this bug, you should know about compose of Korean character. As many other language, Korean character is consist of consonant and vowel. Each of Korean character can be composed of maximum 2 consonant. In this case the first consonant is called 'onset' and the last consonant is called 'coda'. In addition, vowel is called 'nucleus.' For example, the character '윤''s the onset is 'ㅇ', the nucleus(vowel) is 'ㅠ' and the coda is 'ㄴ'.
The most used Korean layout is Dubeolsik(2-set). When typing 가나다 with Dubeulsik, the order is 'ㄱ, ㅏ, ㄴ, ㅏ, ㄷ, ㅏ' and its process is 'ㄱ, 가, 간, 가나, 가낟, 가나다'. As you can see, '간' to '가나', the coda is switched to next character's onset. It is called '도깨비불 현상(wisp phenomenon)' and is compulsory phenomenon of Dubeulsik.
With scim-1.4.17 and scim-hangul-0.4.0, Hangul Dubeolsik does not occur wisp phenomenon. For example, when typing '가나다', the result is '간ㅏ다' instead of '가나다'.
GCC 6.0 defaults to c++11
, -std=c++11
can be passed to 5.x and it fails to compile with error
In file included from /usr/include/c++/6.0/bits/stl_algobase.h:64:0,
from /usr/include/c++/6.0/bits/char_traits.h:39,
from /usr/include/c++/6.0/ios:40,
from /usr/include/c++/6.0/ostream:38,
from /usr/include/c++/6.0/iostream:39,
from .././../../../src/scim.h:193,
from .././../../../src/scim_backend.cpp:33:
/usr/include/c++/6.0/bits/stl_pair.h: In instantiation of ‘struct std::pair<const std::__cxx11::basic_string<char>, scim::Pointer<scim::IMEngineFactoryBase> >’:
.././../../../src/scim_backend.cpp:117:82: required from here
/usr/include/c++/6.0/bits/stl_pair.h:191:17: error: ‘constexpr std::pair<_T1, _T2>::pair(const std::pair<_T1, _T2>&) [with _T1 = const std::__cxx11::basic_string<char>; _T2 = scim::Pointer<scim::IMEngineFactoryBase>]’ declared to take const reference, but implicit declaration would take non-const
constexpr pair(const pair&) = default;
^
I am opening this issue because scim appeals to me very much. While other input method platforms grow larger and slower, scim remains simple and lean.
Is it being maintained? I see some commits. I know somebody is working.
Anyway, there is one major issue that prevents me from being able to use scim. It has been described elsewhere as a loss of focus, but in my experience window focus is never lost. Rather, scim suddenly stops sending input to the focused window. This has a tendency to happen when using Ctrl keyboard shortcuts, e.g. Ctrl + u
in a terminal window running a shell.
Switching focus to another window, pressing a key or two, and switching back to the original window usually solves the issue. When it does not, switching again and pressing even more keys almost always does. Wash, rinse, repeat.
Other than this, scim is pretty much perfect (to me, at least). You can configure it with text files for crying out loud--a convenience that scim's alternatives seem to have completely forgotten.
Thank you and take care.
■ uname -srvmo
Linux 4.19.57-v7+ #1244 SMP Thu Jul 4 18:45:25 BST 2019 armv7l GNU/Linux
■ scim -h
Smart Common Input Method 1.4.18
P.S. I have also experienced this issue on a Debian system back in 2014. And I can almost always reproduce the issue after running the following command:
xdotool key --delay 150 --clearmodifiers "Shift_L+u"
The issue, as seen in some GTK+ applications is that when SCIM IM is turned on,
<Ctrl+Shift+U> 0008 <Enter>
<Ctrl+Shift+U> 007F <Enter>
This issue has shown up for version 1.4.14 users or various platforms:
有个问题想要咨询一下:
期待回复!~
Reported by Daniel Kahn Gilmore
https://bugzilla.gnome.org/show_bug.cgi?id=751402
https://sourceforge.net/p/scim/bugs/236/
usinc scim 1.4.15-3 on debian, gcr prompting on a gnome3 environment the tab key doesn't move between fields.
When trying to compile out of source dir like mkdir build && cd build && ./../configure && make
it errors with
In file included from ../../.././../extras/immodules/agent/scim-bridge-agent.cpp:44:0:
../../.././../src/scim.h:278:28: fatal error: scim_types.h: No such file or directory
We have a few open tickets left on
https://sourceforge.net/p/scim/support-requests/
https://sourceforge.net/p/scim/patches/
https://sourceforge.net/p/scim/feature-requests/
https://sourceforge.net/p/scim/bugs/
Let's close them.
This is from the output of lintian:
extras/immodules/client-common/scim-bridge-client.c
1233: scim_bridge_perrorln ("The client library is not intialized at scim_bridge_client_read_and_dispatch ()");
"intialized" should be "initialized"
I'm using latest master of SCIM (scim-pinyin) and GNOME 3.20, Chinese input is fine, but with SCIM switched on, and pressed SHIFT,
I think they are the same issue, non-unicode chars ignored by SCIM, is that true?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.