Difference between revisions of "Bug Tracking/ja"

From Lazarus wiki
Jump to navigationJump to search
 
(41 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
{{Japanese Menu}}
 
{{Japanese Menu}}
==概要==
+
=概要=
===このページの目的===
+
==このページの目的==
Lazarusは主に海外で開発が進められているソフトです。
+
Lazarusは主に海外で開発が進められており、現在のところ、日本語に対して完全には対応していません。
現状では、日本語対応が完全にできていない部分があります。
+
このページでは日本語で、あるいは、日本語の、障害情報を集積します。
このページでは日本語関連の障害情報を集積することが目的です。
 
  
Lazarus関連での日本語の取り扱いに関して、問題があったり、解決策を見出した場合、些細なことでもいいので、書き残してください。
+
Lazarusで日本語の取り扱いに関して、問題があったり、解決策を見出した場合、些細なことでもいいので、書き残してください。
他の誰かも、そういう情報を必要としています。また、解決できる能力のある人は是非腕をふるってください。
+
すでに解決がすすめられている課題かもしれませんので、もし、英語がわかるのであれば、バグトラックを参考にしてください。
  
===問題の解決方法===
+
http://bugs.freepascal.org/
現在日本語のLazarusのコミュニティは大変小さいです。ドキュメントの翻訳に携わっている人も少ないので、問題がすぐに解決できるとは限りません。しかし、オープンソースですから、誰でも修正できる、ということが、大きな利点です。日本語Lazarusコミュニティ内でも、ここに上げられた情報は、修正していきたいと思っています。
 
  
===日本語関連以外のバグを見つけました。私は英語が不得意なので本家に報告できません===
+
 
構いません。誰かがなんとかします。ここに書いておくか、日本語Lazarus-MLに入って送信してください。
+
==問題の解決方法==
 +
日本語のメーリングリストによるLazarusのコミュニティは少人数なので、問題がすぐに解決できるとは限りません。
 +
しかし、オープンソースのコミュニティで開発がすすめられていますので、誰でもソースコードをみて、修正ができます。
 +
これが、大きな利点であり、楽しみでもあります。
 +
 
 +
実際、ものすごい勢いで、ソースコードが世界中からコミットされ、すでにSVNによる通算の更新カウントは10万回を超えています。
 +
 
 +
日本語Lazarusコミュニティ内でも、ここに上げられた情報は、必要なものは英訳して本家のバグレポートなどへ報告するか、日本語の環境でソースを分析して修正していきたいと思っています。
 +
 
 +
==バグを見つけましたが英語が不得意なので本家に報告できません==
 +
 
 +
ここに書いておくか、日本語Lazarus-MLに入って日本語で報告してください。
  
 
===ここに書く時に何か気をつける事はありますか?===
 
===ここに書く時に何か気をつける事はありますか?===
  
できるだけ、発生する状態を詳しく書いてください。そうすると、バグの再現性が高まり、バグが発生した状況から、発生源を追跡する事ができるので解消の可能性が高くなります。
+
バグの発生したLazarusのバージョン、OSを書いてください。
 +
 
 +
=障害情報=
 +
 
 +
==解決作業中==
 +
 
 +
===IDEで日本語入力の位置が変、入力中に文字化けする===
 +
Windows/0.9.26以前は修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
 +
最新の0.9.27系のSVNレビジョンでは多くのバグが修正されています。最新のSVNからソースを取得して
 +
コンパイルしてください。
 +
0.9.27-SVNレビジョン用のIMEのパッチを準備しています。
 +
バグトラックへ登録済み http://bugs.freepascal.org/view.php?id=13140
 +
 
 +
==未解決==
 +
 
 +
===GTK2のときソースエディタで、インプットメッソドを用いて直接日本語を入力することができない===
 +
他のエディタなどから日本語をコピーして貼り付ければ、表示は正しくなされる。
 +
ソースエディタは SynEdit コンポーネントで作成されているので、
 +
SynEdit コンポーネントの問題といえる。改善の手がかりとしては、資料
 +
http://gtklab.sourceforge.jp/gtkim/GTKIM01.TXT
 +
の中ほどにある、gtk_im_context_filter_keypressとcommitシグナルを用いる
 +
必要があると思われる。なぜなら、Lazarus のソース中でそのような処理を
 +
しているところが見当たらないからである。
 +
その他にも http://gtklab.sourceforge.jp/gtkim/ の資料は gtk2 上での
 +
日本語入力の資料としていろいろ役立ちそうです。
 +
英語の資料としては、この辺でしょうか。
 +
http://library.gnome.org/devel/gtk/unstable/GtkIMContext.html
 +
gtk_im_context_filter_keypressとcommitシグナルについての部分を読んで
 +
きちんと処理していただけるようバグトラッカーなどで開発チームに伝えていただければ
 +
ありがたいのですが・・・
 +
 
 +
===Linux上でGTK2を使用すると、IDEから文字が消える===
 +
[[user:Saeka-jp]] SynEditでなんかこのあたりのことをしないといけないような気がする。
 +
GtkIMMulticontext
 +
http://www.google.co.jp/codesearch/p?hl=ja#xADIePpEDw0/kazehakase-0.2.5/src/utils/gtk-utils.c&q=GtkIMMulticontext
 +
IMEはWindowsの問題としてあげているが、別途バグトラックにあげたほうが良いだろう。
 +
こっちのほうが参考になると思われる。geanyのエディタはAnthyもつかえてUTF8なのでFPCの環境として十分使える?
 +
http://www.google.co.jp/codesearch/p?hl=ja#lTzZWQ3nB4Q/geany-0.11/scintilla/ScintillaGTK.cxx&q=gtk_im_%20geany
 +
 
 +
===TPQConnectionコンポーネント(PostgreSQLへのアクセス)がクライアントエンコーディングに対応していない===
 +
 
 +
===Carbon Interface IDEにおいて、エディタ上で日本語入力できない===
 +
Mac OSX 10.4.11/0.9.25 beta
 +
GTK版は確認していないため分かりません。
 +
現象としては、日本語入力モードで入力した場合、ローマ字がそのまま表示され、
 +
ディスプレイ下部に変換前に日本語が表示されている。
 +
スペースキーで変換されるが、エディタ上に反映きない、エディタ上では改行されるのみ。
 +
----
 +
add saeka-jp.
 +
http://bugs.freepascal.org/view.php?id=13140 MacOSX上での
 +
IMEに相当する情報がないか、ということでした。
 +
 
 +
==解決済み==
 +
 
 +
===SynEdit コンポーネントのフォントの初期値===
 +
Windows/0.9.27 ->0.9.28で改善されました。
 +
Heightが正の値でSizeが負の値なのはおかしい?
 +
少なくとも Delphi との互換性を考えるとおかしいが・・・
 +
ちなみに、修正方法は
 +
interface 部の const 宣言中の SynDefaultFontHeight
 +
に負の値を指定すればよい。
 +
 
 +
===Linux上でGTK2でIDEがコンパイルできない===
 +
Linux+GTK2 / 0.9.26 ->0.9.28で改善されました。
  
==現在までに知られている障害==
+
===IDEの日本語の表示が変===
===日本語処理関連===
+
Windows/0.9.26 ->0.9.28で改善されました。
[解決作業中]
+
[[User:Saeka-jp]]完璧ではありませんが修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
#Windows上でIDEのIME制御ができない。日本語入力の位置が変、入力中に文字化けする。
+
http://bugs.freepascal.org/view.php?id=11819 へ報告済み[[User:Saeka-jp]]
--->[[User:Saeka-jp]]が修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
+
 +
なお、0.9.27 ではこの点についてだいぶ改良が進んでいますのでパッチ等が不要です。
 +
テストに協力してもよいという方は、是非 0.9.27 をご使用ください。
  
#Windows上でプロパティエディタで日本語を入力すると文字が途中で切れていることがある。
+
===IDE上で、フォントをフォントダイアログで設定するときにフォント文字中に日本語がはいっていると設定されない===
--->[[User:Saeka-jp]]
+
Windows/0.9.26 ->0.9.28で改善されました。
 すぐできる対応方法としては、FormCreateなどでコードでプロパティに代入すると良いようです。
+
[[User:Saeka-jp]]バグトラックへ登録済み http://bugs.freepascal.org/view.php?id=13141
 SJISですすむなら、プロパティエディタ、リソース周りを検証する必要があります。
 
 基本的にはUnicode(utf-8)でいったほうが、クロス環境になりうると思いますので、そういう作業を少しづつすすめています。
 
  
 +
===IDEのObject Inspector 内の Font.Name のドロップダウンリストの一覧内に、フォント名中に日本語がはいっているフォントが表示されない===
 +
Windows/0.9.27 beta ->0.9.28で改善されました。
 +
lcl\include\screen.inc 内の
 +
EnumFontsNoDups 関数内の
 +
  S := LogFont.elfLogFont.lfFaceName;
 +
という行を
 +
  S := AnsiToUTF8(LogFont.elfLogFont.lfFaceName);
 +
とすればうまく動作するようです。
 +
 +
なお、同じ問題が LazReport のデザイナでもありますが
 +
lr_desgn.pas 内の
 +
EnumFontsProc 関数内の
 +
  s := StrPas(LogFont.elfLogFont.lfFaceName);
 +
という行を
 +
  s := AnsiToUTF8(StrPas(LogFont.elfLogFont.lfFaceName));
 +
とすればうまく動作します。
 +
もし他にも EnumFontFamiliesEx 関数を用いているところがあるなら
 +
上と同じように修正すればうまくいくのではないかと思います。
 +
EnumFontFamiliesExA の代わりに EnumFontFamiliesExW を
 +
使用するようにするのがより完璧な修正方法でしょう。
 +
 +
おそらく上の「IDE上で、フォントをフォントダイアログで設定するときにフォント
 +
文字中に日本語がはいっていると設定されない」という問題も同じようにどこかで
 +
AnsiToUTF8 を使えば修正できると思います。
  
 +
===IDEエディタフォントとしてMSゴシックなどの日本語フォントを指定すると1文字あたりの文字幅が広すぎる表示になってしまう===
 +
Windows/0.9.27 beta ->0.9.28で改善されました。
 +
synedit.pp 内の
 +
TCustomSynEdit.RecalcCharExtent メソッド内の
 +
Pitch := fpDefault; // maybe Fixed
 +
という部分を
 +
Pitch := fpFixed; // maybe Fixed
 +
と変更することで問題が解決することを確認していますが、正当な解決方法なのかどうかは現在不明です。
  
[未解決]
+
 (追記)
#Linux上でGTK2を使用すると、IDEから文字が消える。
+
 解決策ではありませんが、Terminalフォントを設定してみたら、とりあえず修正なしでもゴマカシ回避ができました。(XP)
#TPQConnectionコンポーネント(PostgreSQLへのアクセス)がクライアントエンコーディングに対応していない。
+
 
 +
===プロパティエディタで日本語を入力すると文字が途中で切れていることがある===
 +
Windows/0.9.24
 +
[[User:Saeka-jp]]すぐできる対応方法としては、FormCreateなどでコードでプロパティに代入する。
 +
Unicode(utf-8)になってからは、修正されました。(0.9.26で確認済み)
 +
 
 +
=その他=
  
===それ以外の障害===
 
==その他==
 
 
[[User:Tooka]]がnkfを呼び出して、文字コードを自動変換できないかと研究しています。興味のある方は[[User:Tooka]]に話しかけるか、日本語メーリングリストに登録してください。
 
[[User:Tooka]]がnkfを呼び出して、文字コードを自動変換できないかと研究しています。興味のある方は[[User:Tooka]]に話しかけるか、日本語メーリングリストに登録してください。
 +
 +
 +
{{AutoCategory}}
 +
[[Category:Community/ja]]

Latest revision as of 18:59, 25 July 2015

日本語版メニュー
メインページ - Lazarus Documentation日本語版 - 翻訳ノート - 日本語障害情報

概要

このページの目的

Lazarusは主に海外で開発が進められており、現在のところ、日本語に対して完全には対応していません。 このページでは日本語で、あるいは、日本語の、障害情報を集積します。

Lazarusで日本語の取り扱いに関して、問題があったり、解決策を見出した場合、些細なことでもいいので、書き残してください。 すでに解決がすすめられている課題かもしれませんので、もし、英語がわかるのであれば、バグトラックを参考にしてください。

http://bugs.freepascal.org/


問題の解決方法

日本語のメーリングリストによるLazarusのコミュニティは少人数なので、問題がすぐに解決できるとは限りません。 しかし、オープンソースのコミュニティで開発がすすめられていますので、誰でもソースコードをみて、修正ができます。 これが、大きな利点であり、楽しみでもあります。

実際、ものすごい勢いで、ソースコードが世界中からコミットされ、すでにSVNによる通算の更新カウントは10万回を超えています。

日本語Lazarusコミュニティ内でも、ここに上げられた情報は、必要なものは英訳して本家のバグレポートなどへ報告するか、日本語の環境でソースを分析して修正していきたいと思っています。

バグを見つけましたが英語が不得意なので本家に報告できません

ここに書いておくか、日本語Lazarus-MLに入って日本語で報告してください。

ここに書く時に何か気をつける事はありますか?

バグの発生したLazarusのバージョン、OSを書いてください。

障害情報

解決作業中

IDEで日本語入力の位置が変、入力中に文字化けする

Windows/0.9.26以前は修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
最新の0.9.27系のSVNレビジョンでは多くのバグが修正されています。最新のSVNからソースを取得して
コンパイルしてください。
0.9.27-SVNレビジョン用のIMEのパッチを準備しています。
バグトラックへ登録済み http://bugs.freepascal.org/view.php?id=13140

未解決

GTK2のときソースエディタで、インプットメッソドを用いて直接日本語を入力することができない

他のエディタなどから日本語をコピーして貼り付ければ、表示は正しくなされる。
ソースエディタは SynEdit コンポーネントで作成されているので、
SynEdit コンポーネントの問題といえる。改善の手がかりとしては、資料
http://gtklab.sourceforge.jp/gtkim/GTKIM01.TXT
の中ほどにある、gtk_im_context_filter_keypressとcommitシグナルを用いる
必要があると思われる。なぜなら、Lazarus のソース中でそのような処理を
しているところが見当たらないからである。
その他にも http://gtklab.sourceforge.jp/gtkim/ の資料は gtk2 上での
日本語入力の資料としていろいろ役立ちそうです。
英語の資料としては、この辺でしょうか。
http://library.gnome.org/devel/gtk/unstable/GtkIMContext.html
gtk_im_context_filter_keypressとcommitシグナルについての部分を読んで
きちんと処理していただけるようバグトラッカーなどで開発チームに伝えていただければ
ありがたいのですが・・・

Linux上でGTK2を使用すると、IDEから文字が消える

user:Saeka-jp SynEditでなんかこのあたりのことをしないといけないような気がする。
GtkIMMulticontext
http://www.google.co.jp/codesearch/p?hl=ja#xADIePpEDw0/kazehakase-0.2.5/src/utils/gtk-utils.c&q=GtkIMMulticontext
IMEはWindowsの問題としてあげているが、別途バグトラックにあげたほうが良いだろう。
こっちのほうが参考になると思われる。geanyのエディタはAnthyもつかえてUTF8なのでFPCの環境として十分使える?
http://www.google.co.jp/codesearch/p?hl=ja#lTzZWQ3nB4Q/geany-0.11/scintilla/ScintillaGTK.cxx&q=gtk_im_%20geany

TPQConnectionコンポーネント(PostgreSQLへのアクセス)がクライアントエンコーディングに対応していない

Carbon Interface IDEにおいて、エディタ上で日本語入力できない

Mac OSX 10.4.11/0.9.25 beta
GTK版は確認していないため分かりません。
現象としては、日本語入力モードで入力した場合、ローマ字がそのまま表示され、
ディスプレイ下部に変換前に日本語が表示されている。
スペースキーで変換されるが、エディタ上に反映きない、エディタ上では改行されるのみ。
----
add saeka-jp.
http://bugs.freepascal.org/view.php?id=13140 MacOSX上での
IMEに相当する情報がないか、ということでした。

解決済み

SynEdit コンポーネントのフォントの初期値

Windows/0.9.27 ->0.9.28で改善されました。 
Heightが正の値でSizeが負の値なのはおかしい?
少なくとも Delphi との互換性を考えるとおかしいが・・・
ちなみに、修正方法は
interface 部の const 宣言中の SynDefaultFontHeight
に負の値を指定すればよい。

Linux上でGTK2でIDEがコンパイルできない

Linux+GTK2 / 0.9.26 ->0.9.28で改善されました。 

IDEの日本語の表示が変

Windows/0.9.26 ->0.9.28で改善されました。 
User:Saeka-jp完璧ではありませんが修正パッチを配布しています。詳しくは、日本語Lazarus-MLをご覧下さい。
http://bugs.freepascal.org/view.php?id=11819 へ報告済みUser:Saeka-jp

なお、0.9.27 ではこの点についてだいぶ改良が進んでいますのでパッチ等が不要です。
テストに協力してもよいという方は、是非 0.9.27 をご使用ください。

IDE上で、フォントをフォントダイアログで設定するときにフォント文字中に日本語がはいっていると設定されない

Windows/0.9.26 ->0.9.28で改善されました。 
User:Saeka-jpバグトラックへ登録済み http://bugs.freepascal.org/view.php?id=13141

IDEのObject Inspector 内の Font.Name のドロップダウンリストの一覧内に、フォント名中に日本語がはいっているフォントが表示されない

Windows/0.9.27 beta ->0.9.28で改善されました。
lcl\include\screen.inc 内の
EnumFontsNoDups 関数内の
 S := LogFont.elfLogFont.lfFaceName;
という行を
 S := AnsiToUTF8(LogFont.elfLogFont.lfFaceName);
とすればうまく動作するようです。

なお、同じ問題が LazReport のデザイナでもありますが
lr_desgn.pas 内の
EnumFontsProc 関数内の
 s := StrPas(LogFont.elfLogFont.lfFaceName);
という行を
 s := AnsiToUTF8(StrPas(LogFont.elfLogFont.lfFaceName));
とすればうまく動作します。
もし他にも EnumFontFamiliesEx 関数を用いているところがあるなら
上と同じように修正すればうまくいくのではないかと思います。
EnumFontFamiliesExA の代わりに EnumFontFamiliesExW を
使用するようにするのがより完璧な修正方法でしょう。

おそらく上の「IDE上で、フォントをフォントダイアログで設定するときにフォント
文字中に日本語がはいっていると設定されない」という問題も同じようにどこかで
AnsiToUTF8 を使えば修正できると思います。

IDEエディタフォントとしてMSゴシックなどの日本語フォントを指定すると1文字あたりの文字幅が広すぎる表示になってしまう

Windows/0.9.27 beta ->0.9.28で改善されました。
synedit.pp 内の
TCustomSynEdit.RecalcCharExtent メソッド内の
Pitch := fpDefault; // maybe Fixed
という部分を
Pitch := fpFixed; // maybe Fixed
と変更することで問題が解決することを確認していますが、正当な解決方法なのかどうかは現在不明です。

 (追記)  解決策ではありませんが、Terminalフォントを設定してみたら、とりあえず修正なしでもゴマカシ回避ができました。(XP)

プロパティエディタで日本語を入力すると文字が途中で切れていることがある

Windows/0.9.24
User:Saeka-jpすぐできる対応方法としては、FormCreateなどでコードでプロパティに代入する。
Unicode(utf-8)になってからは、修正されました。(0.9.26で確認済み)

その他

User:Tookaがnkfを呼び出して、文字コードを自動変換できないかと研究しています。興味のある方はUser:Tookaに話しかけるか、日本語メーリングリストに登録してください。