Sign in Join
Wiki copytemporary

Bug Tracking/ja: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11# 概要
22
33## このページの目的
44
55Lazarusは主に海外で開発が進められており、現在のところ、日本語に対して完全には対応していません。 このページでは日本語で、あるいは、日本語の、障害情報を集積します。
66
77Lazarusで日本語の取り扱いに関して、問題があったり、解決策を見出した場合、些細なことでもいいので、書き残してください。 すでに解決がすすめられている課題かもしれませんので、もし、英語がわかるのであれば、バグトラックを参考にしてください。
88
99<http://bugs.freepascal.org/>
1010
1111## 問題の解決方法
1212
1313日本語のメーリングリストによるLazarusのコミュニティは少人数なので、問題がすぐに解決できるとは限りません。 しかし、オープンソースのコミュニティで開発がすすめられていますので、誰でもソースコードをみて、修正ができます。 これが、大きな利点であり、楽しみでもあります。
1414
1515実際、ものすごい勢いで、ソースコードが世界中からコミットされ、すでにSVNによる通算の更新カウントは10万回を超えています。
1616
1717日本語Lazarusコミュニティ内でも、ここに上げられた情報は、必要なものは英訳して本家のバグレポートなどへ報告するか、日本語の環境でソースを分析して修正していきたいと思っています。
1818
1919## バグを見つけましたが英語が不得意なので本家に報告できません
2020
2121ここに書いておくか、日本語Lazarus-MLに入って日本語で報告してください。
2222
2323### ここに書く時に何か気をつける事はありますか?
2424
2525バグの発生したLazarusのバージョン、OSを書いてください。
2626
2727# 障害情報
2828
2929## 解決作業中
3030
3131### IDEで日本語入力の位置が変、入力中に文字化けする
3232
33-`Windows/0.9.26以前は修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。`\
34-`最新の0.9.27系のSVNレビジョンでは多くのバグが修正されています。最新のSVNからソースを取得して`\
35-`コンパイルしてください。`\
36-`0.9.27-SVNレビジョン用のIMEのパッチを準備しています。`\
37-`バグトラックへ登録済み `[`http://bugs.freepascal.org/view.php?id=13140`](http://bugs.freepascal.org/view.php?id=13140)
33+```
34+Windows/0.9.26以前は修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
35+最新の0.9.27系のSVNレビジョンでは多くのバグが修正されています。最新のSVNからソースを取得して
36+コンパイルしてください。
37+0.9.27-SVNレビジョン用のIMEのパッチを準備しています。
38+バグトラックへ登録済み http://bugs.freepascal.org/view.php?id=13140
39+```
3840
3941## 未解決
4042
4143### GTK2のときソースエディタで、インプットメッソドを用いて直接日本語を入力することができない
4244
43-`他のエディタなどから日本語をコピーして貼り付ければ、表示は正しくなされる。`\
44-`ソースエディタは SynEdit コンポーネントで作成されているので、`\
45-`SynEdit コンポーネントの問題といえる。改善の手がかりとしては、資料`\
46-[`http://gtklab.sourceforge.jp/gtkim/GTKIM01.TXT`](http://gtklab.sourceforge.jp/gtkim/GTKIM01.TXT)\
47-`の中ほどにある、gtk_im_context_filter_keypressとcommitシグナルを用いる`\
48-`必要があると思われる。なぜなら、Lazarus のソース中でそのような処理を`\
49-`しているところが見当たらないからである。`\
50-`その他にも `[`http://gtklab.sourceforge.jp/gtkim/`](http://gtklab.sourceforge.jp/gtkim/)` の資料は gtk2 上での`\
51-`日本語入力の資料としていろいろ役立ちそうです。`\
52-`英語の資料としては、この辺でしょうか。`\
53-[`http://library.gnome.org/devel/gtk/unstable/GtkIMContext.html`](http://library.gnome.org/devel/gtk/unstable/GtkIMContext.html)\
54-`gtk_im_context_filter_keypressとcommitシグナルについての部分を読んで`\
55-`きちんと処理していただけるようバグトラッカーなどで開発チームに伝えていただければ`\
56-`ありがたいのですが・・・`
45+```
46+他のエディタなどから日本語をコピーして貼り付ければ、表示は正しくなされる。
47+ソースエディタは SynEdit コンポーネントで作成されているので、
48+SynEdit コンポーネントの問題といえる。改善の手がかりとしては、資料
49+http://gtklab.sourceforge.jp/gtkim/GTKIM01.TXT
50+の中ほどにある、gtk_im_context_filter_keypressとcommitシグナルを用いる
51+必要があると思われる。なぜなら、Lazarus のソース中でそのような処理を
52+しているところが見当たらないからである。
53+その他にも http://gtklab.sourceforge.jp/gtkim/ の資料は gtk2 上での
54+日本語入力の資料としていろいろ役立ちそうです。
55+英語の資料としては、この辺でしょうか。
56+http://library.gnome.org/devel/gtk/unstable/GtkIMContext.html
57+gtk_im_context_filter_keypressとcommitシグナルについての部分を読んで
58+きちんと処理していただけるようバグトラッカーなどで開発チームに伝えていただければ
59+ありがたいのですが・・・
60+```
5761
5862### Linux上でGTK2を使用すると、IDEから文字が消える
5963
60-user:Saeka-jp` SynEditでなんかこのあたりのことをしないといけないような気がする。`\
61-`GtkIMMulticontext`\
62-[`http://www.google.co.jp/codesearch/p?hl=ja#xADIePpEDw0/kazehakase-0.2.5/src/utils/gtk-utils.c&q=GtkIMMulticontext`](http://www.google.co.jp/codesearch/p?hl=ja#xADIePpEDw0/kazehakase-0.2.5/src/utils/gtk-utils.c&q=GtkIMMulticontext)\
63-`IMEはWindowsの問題としてあげているが、別途バグトラックにあげたほうが良いだろう。`\
64-`こっちのほうが参考になると思われる。geanyのエディタはAnthyもつかえてUTF8なのでFPCの環境として十分使える?`\
65-[`http://www.google.co.jp/codesearch/p?hl=ja#lTzZWQ3nB4Q/geany-0.11/scintilla/ScintillaGTK.cxx&q=gtk_im_%20geany`](http://www.google.co.jp/codesearch/p?hl=ja#lTzZWQ3nB4Q/geany-0.11/scintilla/ScintillaGTK.cxx&q=gtk_im_%20geany)
64+```
65+user:Saeka-jp SynEditでなんかこのあたりのことをしないといけないような気がする。
66+GtkIMMulticontext
67+http://www.google.co.jp/codesearch/p?hl=ja#xADIePpEDw0/kazehakase-0.2.5/src/utils/gtk-utils.c&q=GtkIMMulticontext
68+IMEはWindowsの問題としてあげているが、別途バグトラックにあげたほうが良いだろう。
69+こっちのほうが参考になると思われる。geanyのエディタはAnthyもつかえてUTF8なのでFPCの環境として十分使える?
70+http://www.google.co.jp/codesearch/p?hl=ja#lTzZWQ3nB4Q/geany-0.11/scintilla/ScintillaGTK.cxx&q=gtk_im_%20geany
71+```
6672
6773### TPQConnectionコンポーネント(PostgreSQLへのアクセス)がクライアントエンコーディングに対応していない
6874
6975### Carbon Interface IDEにおいて、エディタ上で日本語入力できない
7076
71-`Mac OSX 10.4.11/0.9.25 beta`\
72-`GTK版は確認していないため分かりません。`\
73-`現象としては、日本語入力モードで入力した場合、ローマ字がそのまま表示され、`\
74-`ディスプレイ下部に変換前に日本語が表示されている。`\
75-`スペースキーで変換されるが、エディタ上に反映きない、エディタ上では改行されるのみ。`\
76-`----`\
77-`add saeka-jp.`\
78-[`http://bugs.freepascal.org/view.php?id=13140`](http://bugs.freepascal.org/view.php?id=13140)` MacOSX上での`\
79-`IMEに相当する情報がないか、ということでした。`
77+```
78+Mac OSX 10.4.11/0.9.25 beta
79+GTK版は確認していないため分かりません。
80+現象としては、日本語入力モードで入力した場合、ローマ字がそのまま表示され、
81+ディスプレイ下部に変換前に日本語が表示されている。
82+スペースキーで変換されるが、エディタ上に反映きない、エディタ上では改行されるのみ。
83+----
84+add saeka-jp.
85+http://bugs.freepascal.org/view.php?id=13140 MacOSX上での
86+IMEに相当する情報がないか、ということでした。
87+```
8088
8189## 解決済み
8290
8391### SynEdit コンポーネントのフォントの初期値
8492
85-`Windows/0.9.27 ->0.9.28で改善されました。 `\
86-`Heightが正の値でSizeが負の値なのはおかしい?`\
87-`少なくとも Delphi との互換性を考えるとおかしいが・・・`\
88-`ちなみに、修正方法は`\
89-`interface 部の const 宣言中の SynDefaultFontHeight`\
90-`に負の値を指定すればよい。`
93+``` pascal
94+Windows/0.9.27 ->0.9.28で改善されました。
95+Heightが正の値でSizeが負の値なのはおかしい?
96+少なくとも Delphi との互換性を考えるとおかしいが・・・
97+ちなみに、修正方法は
98+interface 部の const 宣言中の SynDefaultFontHeight
99+に負の値を指定すればよい。
100+```
91101
92102### Linux上でGTK2でIDEがコンパイルできない
93103
94-`Linux+GTK2 / 0.9.26 ->0.9.28で改善されました。 `
104+```
105+Linux+GTK2 / 0.9.26 ->0.9.28で改善されました。
106+```
95107
96108### IDEの日本語の表示が変
97109
98-`Windows/0.9.26 ->0.9.28で改善されました。 `\
99-User:Saeka-jp`完璧ではありませんが修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。`\
100-[`http://bugs.freepascal.org/view.php?id=11819`](http://bugs.freepascal.org/view.php?id=11819)` へ報告済み`User:Saeka-jp\
110+```
111+Windows/0.9.26 ->0.9.28で改善されました。
112+User:Saeka-jp完璧ではありませんが修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
113+http://bugs.freepascal.org/view.php?id=11819 へ報告済みUser:Saeka-jp
101114
102-`なお、0.9.27 ではこの点についてだいぶ改良が進んでいますのでパッチ等が不要です。`\
103-`テストに協力してもよいという方は、是非 0.9.27 をご使用ください。`
115+なお、0.9.27 ではこの点についてだいぶ改良が進んでいますのでパッチ等が不要です。
116+テストに協力してもよいという方は、是非 0.9.27 をご使用ください。
117+```
104118
105119### IDE上で、フォントをフォントダイアログで設定するときにフォント文字中に日本語がはいっていると設定されない
106120
107-`Windows/0.9.26 ->0.9.28で改善されました。 `\
108-User:Saeka-jpバグトラックへ`登録済み http://bugs.freepascal.org/view.php?id=13141`
121+```
122+Windows/0.9.26 ->0.9.28で改善されました。
123+User:Saeka-jpバグトラックへ登録済み http://bugs.freepascal.org/view.php?id=13141
124+```
109125
110126### IDEのObject Inspector 内の Font.Name のドロップダウンリストの一覧内に、フォント名中に日本語がはいっているフォントが表示されない
111127
112-`Windows/0.9.27 beta ->0.9.28で改善されました。`\
113-`lcl\include\screen.inc 内の`\
114-`EnumFontsNoDups 関数内の`\
115-` S := LogFont.elfLogFont.lfFaceName;`\
116-`という行を`\
117-` S := AnsiToUTF8(LogFont.elfLogFont.lfFaceName);`\
118-`とすればうまく動作するようです。`\
128+``` pascal
129+Windows/0.9.27 beta ->0.9.28で改善されました。
130+lcl\include\screen.inc 内の
131+EnumFontsNoDups 関数内の
132+ S := LogFont.elfLogFont.lfFaceName;
133+という行を
134+ S := AnsiToUTF8(LogFont.elfLogFont.lfFaceName);
135+とすればうまく動作するようです。
119136
120-`なお、同じ問題が LazReport のデザイナでもありますが`\
121-`lr_desgn.pas 内の`\
122-`EnumFontsProc 関数内の`\
123-` s := StrPas(LogFont.elfLogFont.lfFaceName);`\
124-`という行を`\
125-` s := AnsiToUTF8(StrPas(LogFont.elfLogFont.lfFaceName));`\
126-`とすればうまく動作します。`\
127-`もし他にも EnumFontFamiliesEx 関数を用いているところがあるなら`\
128-`上と同じように修正すればうまくいくのではないかと思います。`\
129-`EnumFontFamiliesExA の代わりに EnumFontFamiliesExW を`\
130-`使用するようにするのがより完璧な修正方法でしょう。`\
137+なお、同じ問題が LazReport のデザイナでもありますが
138+lr_desgn.pas 内の
139+EnumFontsProc 関数内の
140+ s := StrPas(LogFont.elfLogFont.lfFaceName);
141+という行を
142+ s := AnsiToUTF8(StrPas(LogFont.elfLogFont.lfFaceName));
143+とすればうまく動作します。
144+もし他にも EnumFontFamiliesEx 関数を用いているところがあるなら
145+上と同じように修正すればうまくいくのではないかと思います。
146+EnumFontFamiliesExA の代わりに EnumFontFamiliesExW を
147+使用するようにするのがより完璧な修正方法でしょう。
131148
132-`おそらく上の「IDE上で、フォントをフォントダイアログで設定するときにフォント`\
133-`文字中に日本語がはいっていると設定されない」という問題も同じようにどこかで`\
134-`AnsiToUTF8 を使えば修正できると思います。`
149+おそらく上の「IDE上で、フォントをフォントダイアログで設定するときにフォント
150+文字中に日本語がはいっていると設定されない」という問題も同じようにどこかで
151+AnsiToUTF8 を使えば修正できると思います。
152+```
135153
136154### IDEエディタフォントとしてMSゴシックなどの日本語フォントを指定すると1文字あたりの文字幅が広すぎる表示になってしまう
137155
138-`Windows/0.9.27 beta ->0.9.28で改善されました。`\
139-`synedit.pp 内の`\
140-`TCustomSynEdit.RecalcCharExtent メソッド内の`\
141-`Pitch := fpDefault; // maybe Fixed`\
142-`という部分を`\
143-`Pitch := fpFixed; // maybe Fixed`\
144-`と変更することで問題が解決することを確認していますが、正当な解決方法なのかどうかは現在不明です。`
156+``` pascal
157+Windows/0.9.27 beta ->0.9.28で改善されました。
158+synedit.pp 内の
159+TCustomSynEdit.RecalcCharExtent メソッド内の
160+Pitch := fpDefault; // maybe Fixed
161+という部分を
162+Pitch := fpFixed; // maybe Fixed
163+と変更することで問題が解決することを確認していますが、正当な解決方法なのかどうかは現在不明です。
164+```
145165
146166 (追記)  解決策ではありませんが、Terminalフォントを設定してみたら、とりあえず修正なしでもゴマカシ回避ができました。(XP)
147167
148168### プロパティエディタで日本語を入力すると文字が途中で切れていることがある
149169
150-`Windows/0.9.24`\
151-User:Saeka-jpすぐできる`対応方法としては、FormCreateなどでコードでプロパティに代入する。`\
152-`Unicode(utf-8)になってからは、修正されました。(0.9.26で確認済み)`
170+```
171+Windows/0.9.24
172+User:Saeka-jpすぐできる対応方法としては、FormCreateなどでコードでプロパティに代入する。
173+Unicode(utf-8)になってからは、修正されました。(0.9.26で確認済み)
174+```
153175
154176# その他
155177
156178User:Tookaがnkfを呼び出して、文字コードを自動変換できないかと研究しています。興味のある方はUser:Tookaに話しかけるか、日本語メーリングリストに登録してください。
157179
158180---
159181*From the Free Pascal wiki, page "Bug Tracking/ja", as it stood on 2015-07-25 after a change by FTurtle, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
160182Category: Community/ja
161183Category: Japanese

Back to history