fwen 发表于 2004-4-6 19:56:27

樱家冢 进来!找你真难找 ,关于你的fcitx自起动的回答

修改/etc/X11/xinit/xinitrc.d/xinput文件,很简单的。


我什么方法都用了,你的方法我不大了解但是我觉得我也用了

请你给出详细的修改代码谢了!



我用的fedora1 桌面 gnome

Bluedata 发表于 2004-4-6 20:08:49

你可以下载樱家冢打包的scim看看,里面有scim的,你把它改成fcitx就可以了。
不过,如果你用拼音输入的话,我建议你用scim。 :-)

fwen 发表于 2004-4-7 09:13:47

你可以下载樱家冢打包的scim看看,里面有scim的,你把它改成fcitx就可以了。
不过,如果你用拼音输入的话,我建议你用scim。 :-)


老兄你说的是呀,我已经把scim装上了,可是连调都调不出来,还是卸了
那个樱家冢 跑哪了?
怎么
不回答我呢

12543122 发表于 2004-4-7 10:00:06

不可能啊,你仔细看安装说明了吗?
给好多人介绍scim了,没见有说装不上的。

樱家冢 发表于 2004-4-7 12:40:40

我可以很负责的告诉你,肯定可以的,只要你使用的是redhat or mandrake or magic,如果不行,那就是你在某个地方弄错了,在kde or gnome下面运行export 看看XMODIFIERS="@im=SCIM" 是否出错,贴出来。

fwen 发表于 2004-4-7 13:14:13

in the gnome

export:

# export
declare -x BASH_ENV="/root/.bashrc"
declare -x COLORTERM="gnome-terminal"
declare -x DESKTOP_SESSION="default"
declare -x DISPLAY=":0.0"
declare -x GDMSESSION="default"
declare -x GNOME_DESKTOP_SESSION_ID="Default"
declare -x GTK_RC_FILES="/etc/gtk/gtkrc:/root/.gtkrc-1.2-gnome2"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="fly"
declare -x INPUTRC="/etc/inputrc"
declare -x LANG="zh_CN.GBK"
declare -x LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
declare -x LC_ALL="zh_CN.GBK"
declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin"
declare -x PWD="/root"
declare -x SESSION_MANAGER="local/fly:/tmp/.ICE-unix/2899"
declare -x SHELL="/bin/bash"
declare -x SHLVL="2"
declare -x SSH_AGENT_PID="2963"
declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
declare -x SSH_AUTH_SOCK="/tmp/ssh-mlyi2899/agent.2899"
declare -x TERM="xterm"
declare -x USER="root"
declare -x USERNAME="root"
declare -x WINDOWID="33554508"
declare -x XAUTHORITY="/root/.Xauthority"
declare -x XIM="scim"
declare -x XIM_PROGRAM="scim"
declare -x XMODIFIERS="@im=scim"
#

fwen 发表于 2004-4-7 13:18:22

# scim
Smart Common Input Method 0.9.3

Loading simple Config module ...
Creating backend ...
Loading Server module: pinyin ...
    Loading Server Factory 0 ... : OK
pinyin Server module is successfully loaded.
Loading Server module: rawcode ...
    Loading Server Factory 0 ... : OK
rawcode Server module is successfully loaded.
Loading Server module: table ...
    Loading Server Factory 0 ... : OK
    Loading Server Factory 1 ... : OK
    Loading Server Factory 2 ... : OK
    Loading Server Factory 3 ... : OK
    Loading Server Factory 4 ... : OK
    Loading Server Factory 5 ... : OK
    Loading Server Factory 6 ... : OK
    Loading Server Factory 7 ... : OK
    Loading Server Factory 8 ... : OK
    Loading Server Factory 9 ... : OK
    Loading Server Factory 10 ... : OK
table Server module is successfully loaded.
Loading x11 FrontEnd module ...
Starting SCIM ...

fwen 发表于 2004-4-7 13:42:29

/etc/X11/xinit/xinitrc.d/xinput:



#!/bin/sh
# Copyright (C) 1999-2001 Red Hat, Inc.
#
# XIM( X Input Method ) script
#
# Korean part,etc contributed by
#        Won-kyu Park <[email protected]>
#

oldterm=$TERM
unset TERM
# Load up the user and system locale settings
if [ -f /etc/profile.d/lang.sh ] ; then
. /etc/profile.d/lang.sh
fi
export TERM=$oldterm

tmplang="en_US"
#if test x$GDM_LANG != x ; then
#    tmplang=$GDM_LANG
if test x$LC_ALL != x ; then
    tmplang=$LC_ALL
elif test x$LC_CTYPE != x ; then
    tmplang=$LC_CTYPE
elif test x$LANG != x ; then
    tmplang=$LANG
elif [ -e /etc/sysconfig/i18n ]; then
    . /etc/sysconfig/i18n
    tmplang=$LANG
fi

#
# check to see if the user has a preferred desktop
#

PREFERRED=

# runlevel 5 - checks which session manager it will load
# runlevel 3 - checks which desktop manager it will load
if [ -f /etc/sysconfig/desktop ]; then
# FIXME: This grep regex can be combined when someone has copious spare time.
if grep -q "GNOME" /etc/sysconfig/desktop 2>/dev/null || grep -q "\"\"" /etc/sysconfig/desktop 2>/dev/null; then
       # runlevel 5 with gdm - checks for $GDMSESSION and set the $PREFERRED
       if [ x$GDMSESSION = xDefault ]; then
               PREFERRED=gnome
       elif [ x$GDMSESSION = xGNOME ]; then
               PREFERRED=gnome
       elif [ x$GDMSESSION = xKDE ]; then
               PREFERRED=kde
       else
               # applies if no env and runlevel 3
               PREFERRED=gnome
       fi
elif grep -q "KDE" /etc/sysconfig/desktop 2>/dev/null; then

        if [ -z $1 ] || [ x$1 = xdefault ]; then
               # applies if no arg passed by kdm and runlevel 3
               PREFERRED=kde
        else
               # otherwise assign $PREFERRED from arg
               PREFERRED=$1
        fi
fi
fi

if [ -z $PREFERRED ]; then

        GSESSION=gnome-session
        STARTKDE=startkde

        # by default, we run GNOME.
        if which $GSESSION > /dev/null 2>&1; then
                PREFERRED=gnome
        fi

        # if GNOME isn't installed, try KDE.
        if which $STARTKDE > /dev/null 2>&1; then
                PREFERRED=kde
        fi
fi


#
# check $XIM and set a default $XIM value.
#
if [ -z "$XIM" ]; then
    case $tmplang in
      ko*)
            if [ -e /usr/bin/ami ]; then
                  XIM="Ami"
            elif [ -e /usr/bin/hanIM ]; then
                  XIM="hanIM"
            fi
      ;;
      ja*)
          if [ -e /usr/X11R6/bin/xwnmo ]; then
                  XIM="_XWNMO"
          elif [ -e /usr/X11R6/bin/kinput2 ]; then
                  XIM="kinput2"
          elif [ -e /usr/X11R6/bin/skkinput ]; then
                  XIM="skkinput"
          fi
      ;;
      zh_CN*)
            if [ -e /usr/bin/scim ]; then
                XIM="SCIM"
            elif [ -e /usr/X11R6/bin/xcin ]; then
            export LC_CTYPE=zh_CN.GBK
            XIM="xcin-zh_CN.GBK"
          fi
      ;;
      zh_TW*)
          if [ -e /usr/X11R6/bin/xcin ]; then
                XIM="xcin"
          fi
      ;;
      *)
          XIM="none"
      ;;
    esac
fi

#
# set a proper XIM program with respect to $XIM
#
if [ -z "$XIM_PROGRAM" ]; then
   case "$XIM" in
      Ami)
        case "$PREFERRED" in
           gnome)
                if which ami_applet >/dev/null 2>&1 ; then
                        DELAY_START=2
                        XIM_PROGRAM=ami_applet
                        XIM_ARGS=""
                elif which ami >/dev/null 2>&1 ; then
                        XIM_PROGRAM=ami
                fi
          ;;
          kde)
                if which wmami >/dev/null 2>&1 ; then
                        XIM_PROGRAM=wmami
                        XIM_ARGS="-wait"
                elif which ami >/dev/null 2>&1 ; then
                        XIM_PROGRAM=ami
                fi
          ;;
          *)
                if which ami >/dev/null 2>&1 ; then
                        XIM_PROGRAM=ami
                fi
          ;;
        esac
        ;;
      hanIM)
        if which hanIM >/dev/null 2>&1 ; then
                XIM_PROGRAM=hanIM
        fi
        ;;
      SCIM)
      XIM_PROGRAM=scim ;;
      xcin)
      XIM_PROGRAM=xcin
        XIM_ARGS="-x xcin" ;;
      _XWNMO)
        XIM_PROGRAM=xwnmo
       ;;
      kinput2)
        XIM_PROGRAM=kinput2
        if [ X"`ldd /usr/X11R6/bin/kinput2 | grep libcanna`" = X ] ; then
                XIM_ARGS="-wnnenvrc /etc/FreeWnn/ja/wnnenvrc"
        else
                XIM_ARGS="-canna"
        fi
       ;;
      skkinput)
      XIM_PROGRAM=skkinput
      XIM_ARGS="" ;;
      *)
        XIM_PROGRAM=/bin/true ;;
   esac
fi
[ -z "$XMODIFIERS" -a -n "$XIM" ] && export XMODIFIERS="@im=$XIM"

# execute XIM_PROGRAM


if test x$DELAY_START != x; then
        #spawn to new process with external shell
bash -c "
    while [ x\`ps -C panel -o pid=\` == x ]; do
            sleep $DELAY_START
    done
    [ -z "\$XMODIFIERS" -a -n "$XIM" ] && export XMODIFIERS="@im=$XIM"
    sleep $DELAY_START
    which $XIM_PROGRAM > /dev/null 2>&1 && LANG=$tmplang $XIM_PROGRAM $XIM_ARGS &
" &

else
      which $XIM_PROGRAM > /dev/null 2>&1 && LANG=$tmplang $XIM_PROGRAM $XIM_ARGS &
fi

fudaming 发表于 2004-4-7 13:47:12

楼主,樱家冢说的确实是非常好的思路。建议你看看他推荐的文件/etc/X11/xinit/xinitrc.d/xinput,我的方法是不修改这个文件,但是根据这个文件,我制作一个/usr/bin/fcitx的链接,文件名就是chinput。然后重启X试试。

fwen 发表于 2004-4-7 13:50:39

sorry,i have been try

/root/.bashrc :


# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

#SCIM
export XMODIFIERS="@im=scim"
export XIM=scim
export XIM_PROGRAM=scim

#LOCALE setup
export LC_ALL=zh_CN.GBK       
export LANG=zh_CN.GBK

樱家冢 发表于 2004-4-7 14:08:49


#SCIM
export XMODIFIERS="@im=scim"
export XIM=scim
export XIM_PROGRAM=scim

这里错了,去掉这些东东,如果你不想去掉就把它改成

#SCIM
export XMODIFIERS="@im=SCIM"
export XIM=scim
export XIM_PROGRAM=scim

看出区别来了吗?
另外,你使用的是旧版本的,我已经上传了一个新版本的,修正了一个问题,你也可以手动改。


zh_CN*)
if [ -e /usr/bin/scim ]; then
XIM="SCIM"
elif [ -e /usr/X11R6/bin/xcin ]; then
export LC_CTYPE=zh_CN.GBK
XIM="xcin-zh_CN.GBK"
fi
;;


改成

zh_CN*)
if [ -e /usr/bin/scim ]; then
XIM="SCIM"
XIM_ARGS="-d"
elif [ -e /usr/X11R6/bin/xcin ]; then
export LC_CTYPE=zh_CN.GBK
XIM="xcin-zh_CN.GBK"
fi
;;

fwen 发表于 2004-4-7 14:35:03


#SCIM
export XMODIFIERS="@im=scim"
export XIM=scim
export XIM_PROGRAM=scim

这里错了,去掉这些东东,如果你不想去掉就把它改成

#SCIM
export XMODIFIERS="@im=SCIM"
export XIM=scim
export XIM_PROGRAM=scim

看出区别来了吗?
另外,你使用的是旧版本的,我已经上传了一个新版本的,修正了一个问题,你也可以手动改。


zh_CN*)
if [ -e /usr/bin/scim ]; then
XIM="SCIM"
elif [ -e /usr/X11R6/bin/xcin ]; then
export LC_CTYPE=zh_CN.GBK
XIM="xcin-zh_CN.GBK"
fi
;;


改成

zh_CN*)
if [ -e /usr/bin/scim ]; then
XIM="SCIM"
XIM_ARGS="-d"
elif [ -e /usr/X11R6/bin/xcin ]; then
export LC_CTYPE=zh_CN.GBK
XIM="xcin-zh_CN.GBK"
fi
;;







太谢谢你啦! :-D:-D

现在行了,还有一点不明白的,我这里对吗?

SCIM)
      XIM_PROGRAM=scim
      XIM_ARGS="-d";;
      xcin)
      XIM_PROGRAM=xcin
        XIM_ARGS="-x xcin" ;;
      _XWNMO)
        XIM_PROGRAM=xwnmo
       ;;

以后有什么问题就问你了:)

樱家冢 发表于 2004-4-7 15:04:32

都可以的,要错也是我上面的写法出了错,刚才急着写,没看清楚, :lol: ,你下载我打包的scim就知道了,没问题的。
页: [1]
查看完整版本: 樱家冢 进来!找你真难找 ,关于你的fcitx自起动的回答