
Ubuntu日本語フォーラム

ログインしていません。
ubuntu(24.04.2LTS)を使いはじめてひと月ほどの初心者ですが、skkで単語登録できません。
最初ibus-skkを使っていて、単語登録できないので、fcitx5-cskkに換えたのですが、同様にできません。
Windows11のskkでは、変換候補がないとき、自動的に登録ウィンドウが出てきて、それに単語を入力すれば、登録するかどうかYes,Noが問われ、直ちに登録できたのですが、ibus-skkでも、fcitx5-cskkでも、登録ウィンドウ自体出てこなくて、どうしてよいか分りません。
どうしたらよいでしょうか。あるいは、もともと単語登録できるようになっていないのでしょうか。
単語登録できるようになっていない場合、Windows11のskkで作ったユーザー辞書skkuser.txtを使えればと思い、いろいろと試してみたのですが、skkuser.txtの配置ディレクトリが分らず、また辞書ファイルの設定も、fcitx5-cskkの設定GUIで辞書の追加設定してもダメです。
オフライン
fcitx5-skk をインストールして使ってみましたが、下記の画像のように漢字登録できるような気がします。
もしかしたらWindowsと挙動が違うのかもしれません。
https://imgur.com/a/izukdqQ
辞書設定は /usr/share/fcitx5/skk/dictonary_list へ追加しないといけないのかもしれません。
(dpkg-query -L fcitx5-skkで調べました。fcitx5-skkでインストールされたファイルをリストするコマンド。)
dictionary_list の書き方は下記にあります。
https://github.com/fcitx/fcitx5-cskk?tab=readme-ov-file#辞書
$HOME/.local/share/fcitx5/skk/user.dict のファイルエンコーディングが標準だとeuc-jp となっていたので、ちょっと厄介かもしれません。
オンライン
GUIでも辞書を設定できるみたいです。
https://imgur.com/a/v7V3XcZ
fcitx5-configtool -> Addonsタブ -> SKKの項目の右端のギア -> 一番下のDictionaryの右のギア -> でユーザー辞書を設定できると思います。
オンライン
Beatsさん
さっそくのご返信ありがとうございます。
https://github.com/fcitx/fcitx5-cskkの下欄はあまり見ていなかったので、直接編集できることに気付きませんでした。主にリンクの張られている説明書のほうを見ていました。
GUIでユーザー辞書skkuser.txtを追加した(ディレクトリはデフォルトのパスが$HOME/.local/share/fcitx5-cskk/となっていたので、そこにskkuser.txtを配置)のですが、全然変らず、ダメ、というのが前回まで。
そこで、今回、アドバイスにしたがい、dictonary_listを編集することにしました。
まず、dictonary_listは$HOME/.local/share/fcitx5/skk/ にもあるので、それを見ると、GUIで設定したことにより、変化していました。しかし、skkuser.txtの文字はあるものの、type,file,mode,encoding,completeを指定するようにはなっていません。そこで、これをつぎのように正しい記述にして2行目に加えてみました。
type=file,file=$HOME/.local/share/fcitx5-cskk/sskuser.txt,mode=readwrite,encoding=utf-16LE,complete=true
が、やはり、何も変わりません。
/usr/share/fcitx5/skk/dictonary_listはどうかというと、GUI設定の後でも、何も変っていないようです。そこで、これも同じように変えてみましたが、同じように何も変わらず、ダメです。
以上は、設定変更ごとにrebootをくりかえし、VSCodeを開いて、入力、変換し、さらに単語登録を試してみた結果です。登録については、すべての場合において、https://imgur.com/a/izukdqQの画像のようにはなりません。
utf-16LEが問題で、これをutf-8に変換しなければいけないのでしょうか。
オフライン
https://github.com/fcitx/fcitx5-cskk?tab=readme-ov-file#辞書
上記に『少なくとも"euc-jp"や"utf-8"が使える。』とあるので、utf-16LEではダメなのかもしれませんね。
nkfコマンドなんかで、euc-jp か utf-8 に変換する必要があるのかも。
オンライン
nkfコマンドなんかで、euc-jp か utf-8 に変換する必要があるのかも。
たしかにそうですね。
ただ、skkuser.txtはplain textにすぎませんので、もとのものをコピペしたりして、utf-8で最初から作ってみてもよいのかと思っています。
nkfコマンド使ったことがないので。
オフライン
skkuser.txtをnkfコマンドでutf-8に変換してみましたが、新たに単語登録できないばかりか、skkuser.txtに登録してある単語への変換もできません。ユーザー辞書そのものが機能していないようです。
ubuntuでは、基本辞書SKK-JISYO.Lを使うだけ、と半ば諦めました。
オフライン
自分の環境では単語登録ができています。
Ubuntu 24.04.3 LTSです。
単語登録についてですが、たとえばfcitx5-skkでキーをGojiraと入力してスペースを押すと、辞書に登録がないので、▼ごじら【| 】と表示されないですか?
そこで【 】内でまたfcitx5-skkの漢字変換で漢字を登録していくと思うのですが、どのような表示になっているのでしょうか?
(▼ごじら【呉▼爾|】 などと入力していくとおもうのですが...)
オンライン
私の場合(Ubuntu 24.04.2.LTS, fcitx5-cskk)、▼ごじら【|】と表示され、▼ごじら【ゴジラ】と入力できるところまでは同じだと思いますが、その後、リターンキーを押すと、
▼ごじら【ゴジラ
】
となってしまい、これが入力(確定)された状態となります。
なにやら、根本的にインストール方法が間違っているような気がします。
私は、https://github.com/fcitx/fcitx5-cskkのreadmeに、「説明書はCSKK Docsに公開。」と記載されているので、そのCSKK Docsに行ってそこに記載されている内容どおりにすすめていったのですが、それがよくなかったのでしょうか。
よろしければ、 Beats さんのインストール方法を教えていただけますか。
オフライン
私の場合は下記のようにパッケージでインストールしました。
もしかして根本的に間違っていたらすみません。
$ sudo apt install fcitx5-skk fcitx5-configtool
オンライン
どこかで間違えていたのかと思って、CSKK Docsの記載どおりのインストールをもう一度くりかえしやってみました。また、Beatsさんのコードでインストールもしてみました。いずれの場合も同じで、つぎのとおりでした。
「▼ごじら【】」で、「▼ごじら【ゴジラ】」と入力しリターンキーを押すと、単に「ゴジラ」が表示されるだけとなります。登録されたのかと思って、「Gojira」と入力すると、「▼ごじら【】」となり、先の状態に戻り、登録されていないことがわかります。
どこかがおかしい、つまりどこかで間違っていたことはたしかなようですが、どれがいけなかったのか、分かりません。
オフライン
辞書ファイルに書き込み権限がないのかもしれません。
GUIで現在の辞書ファイルの保存先を調べて、ターミナルで ls -l コマンドの出力はどうなっていますか?
aki@x280:~/.local/share/fcitx5/skk$ ls -l total 16 -rw-rw-r-- 1 aki aki 160 Aug 19 19:31 dictionary_list -rw-rw-r-- 1 aki aki 656 Aug 19 18:48 newuser.dict -rw------- 1 aki aki 500 Aug 17 20:43 user.dict -rw------- 1 aki aki 119 Aug 19 19:44 user.txt
オンライン
Beatsさんの環境では、
~/.local/share/fcitx5/skkに、
dictionary_list, newuser.dict, user.dict, user.txt
の4つのfileがあるようですが、私のところでは、そもそもfcitx5のディレクトリにはskkなるディレクトリは存在せず、代りにcskkのディレクトリがあって、そのなかにはdictionary_listがあるのみです。
結局、dictionary_listは、~/.local/share/fcitx5/cskkと、/usr/share/fcitx5/skkと、/usr/share/fcitx5/cskkの3つのディレクトリにあるので、これらをすべて
type=file,file=/usr/share/skk/SKK-JISYO.L,mode=readonly,encoding=euc-jp,complete=true
type=filef,file=$HOME/.local/share/fcitx5-cskk/skkuser.txt,mode=readwrite,encoding=utf-8,complete=true
としてrebootしてみました。なお、skkuser.txtのパーミッションについては、ターミナルで
~/.local/share/fcitx5-cskkにおいて、ls -l を打つと、
-rw-rw-r-- 1 yusuke yusuke 79838 8月 19 12:14 skkuser.txt
となっているので、問題はないようです。
その結果はどうなったか。前回の状態と変わりません。
いろいろ考えてみるに、ユーザー辞書をWin11下のものを持ってきて流用しようとしたのが間違いなのかもしれません。一旦これは削除して、user.dictなどが自動生成されるよう、もう一度再インストールすることを考えてみます。
オフライン
あと問題があるとすれば skkuser.txt そのものですか。
utf-8でエンコーディングされているのなら、当然 cat とか less とかでファイル自体は文字化けもなく読めますよね。
1行1エントリーですよね。
最近 Windows とファイルをやり取りするのがほとんどないので、違うかもしれませんが、昔は改行コードが問題になったりしました。
こちらがもしかしたら参考になるかもしれません。
『Windows -> Linux は改行コードに注意!!』
https://qiita.com/roadricefield/items/32d781ed93bd70dded73
オンライン
Beatsさんと私では、違うskkを使っているように思います。私はcskkを、Beatsさんはskkを、それぞれ使っているのではないでしょうか。要するに私が導入したcskkは動作がおかしいと思うようになっています。
そこで、cskkをアンインストールしようと思っているのですが、コマンドは
sudo apt remove fcitx5-cskk
とし、さらに
sudo apt purge fcitx5-cskk
として、コンフィグファイルも取り除こうと思っています。
はじめてですので、これで大丈夫かな、と心配しています。
ご意見を伺えたら、と思います。
その後、同様にfcitx5-skkも一旦除去し、再度fcitx5-skkをインストールすることを考えていますが、その際のインストール方法は、Beatsさんの方法のほうがよいのでしょうか。それともhttps://github.com/fcitx/fcitx5-skkに書かれている方法のほうがよいのでしょうか。
もっとも後者の場合、cmakeやら、C++ Compiler(g++)やら、extra-cmake-modulesやら、gettextが必要のようですし、これらをあらかじめインストールしておかなければならないのか、分かりませんし、Installationのコードも理解できず、そのまま入力していいのか分かりませんので、いまの私には無理なように気がします。
オフライン
インストール方法は、Release のところにある fcitx5-cskk-1.2.0_amd64.deb を sudo dpkg -i でインストールされのですよね?
それと https://github.com/naokiri/cskk/releases の libcskk_3.2.0_amd64.deb は一緒にインストールされましたか?
deb パッケージでインストールしたなら apt purge で両方アンインストールしたらよいと思います。
また、インストール方法はただ単に skk 入力をしたいだけなら、apt install fcitx5-skk でよいと思います。
ちなみに github の fcitx5-cskk の手順でのインストールは途中で躓いて私にはインストールできませんでした。
https://github.com/fcitx/fcitx5-skk の手順でのインストールは試していませんが、やっぱりただ使うだけならメンテも簡単ですし、apt でのインストールをおすすめします。
オンライン
いろいろとありがとうございます。
結局、イントールした順番とは逆に、fcitx5-skk, fcitx5-cskk の順序で apt purge し、さらに ibus-skk も残っているといけないと思い、これも apt purge しました(その過程で、apt と apt-get の違いなども勉強させてもらいました)。
その後、fcitx5-skk を、Beats さんの方法でインストールしたところ、動作が安定し、単語登録も一応できるようになり、user.dict でも確認できています。
ここで、"一応"と言ったのは、かなり不十分だからです。登録単語をコピー・ペーストで入力しようとしてもできなかったり、登録単語の削除ができないのです。①②などを登録したいので、前者には困ります。
しかし、これも仕様なのかもしれないと思って、当面、諦めることとします。
オフライン