Dead Zone

Stand alone.

特に意味は無いんですが

2014-07-21 21:50:49 | 雑記

eclipse4.4って、Linuxではデフォルトでgtk3を使用するんじゃなかったかと思ってたんですが。
Linux Mint 17では、gtk2で起動しますね...
普通に起動して、ps -A|javaでpidを確認して cat /proc/xxxx/maps|grep libswt-pi すると、ロードされてるのは libswt-pi-gtk〜(gtk2用のライブラリ)。
terminalでexport SWT_GTK3=1してからeclipseを起動して、同様にmapsを見ると、ロードされてるのは libswt-pi3-gtk〜(gtk3用のライブラリ)。

Eclipse Project Luna - New and Noteworthy の一番下のSet the GTK+ version to be used by Eclipse via the launcherから Bug 434619 – Switching to GTK+ 2/3 should be easier for products を経て rt.equinox.framework.git - Equinox Framework を見るとやはりデフォルトは2のようで...
eclipse.platform.swt.git - Eclipse Platform SWT を見てもやはりそのようで...

Bug 420180 – [GTK3] Use GTK 3.x (when available) by default on Linux/Unix instead of GTK 2.x
にも関わらずgtk3関連バグは今も大量に残されているのでデフォルトにするのはやめちゃったのかなと。
Bug 421127 – [GTK3] All views empty with GTK 3.10 comment 59
あたりかなと。

ま、特に意味は無いんですが。

 

コメント (0) |  トラックバック (0) | 

eclipseヘルプのテキスト検索

2014-07-19 12:53:47 | 雑記

長いことeclipse使ってて全然知りもせず気にもかけませんでしたが。
元ネタというか発端はこちら。
Bug 422808 – Can not work in eclipse help system Chinese characters full text search
eclipseのヘルプで中国語でのテキスト検索ができねぇ、って話で、それ以外は何を言ってるのかサッパリなアレなんで、アレなんですが。

ヘルプのテキスト検索はLuceneが担っていますが、eclipseはIndex作成時のAnalyzerをOSのデフォルトの言語(Locale(厳密に言うとosgi.nl))によって決定しているようです。
日本語OSで日本語ヘルプの場合は、ふつ〜Locale=osgi.nl=ja_JPなのでCJKAanalyzerが使用されて日本語も適切にIndex化されます。
中国語ヘルプは中国語OSか、eclipse起動オプションに-nl zh_CNとか足してosgi.nl=zh_CNな中国語環境にしてやれば、ChineseAnalyzerが使用されて中国語も適切に(たぶん)Index化されます。

ということは...
英語版OSでは日本語ヘルプはIndex化されず、テキスト検索はできないということに...
その場合1回はeclipseを-nl ja_JPオプションをつけて起動してIndexを作成しなければならないということに...
たぶん複数の言語が混在する場合は手の施しようが無いケースもあり得るということに...

Indexは一度作成してしまうと、再作成するためにはいったんIndex(eclipse/configuration/org.eclipse.help.base/index)を削除する必要があり...
いろいろ面倒くさいことに...

なんだかなぁと思いつつBugzillaを検索してみたら。
タイトル(summary)に「help」を含むものが350件。これにはヘルプと直接関係ないものも含まれるので、summary調整された「[Help]」で絞ると180件。相当に古いものが相当に放置されてたり...
感心した。

全文検索用のIndex作成を検索対象のコンテンツではなくOSの言語で決めるってどうなのよと。キーボードレイアウトを言語で決めてしまう以上に筋違いというか何というか気持ち悪いというか気味が悪いというか...ゾゾゾ

 

コメント (0) |  トラックバック (0) | 

懐かしの

2014-07-17 21:16:17 | 雑記

元ネタは
Bug 436835 – [KeyBindings] Key binding Alt+Shift+X, J does not work until an application has been run at least once using some other command
で、タイトル通りAlt+Shift+X,J(Run Java Application)が効かないって話なんですが。
コメントにあるように、一度実行してからなら上記ショートカットキーは効きます。
実行しなくても、RunまたはDebugボタンのドロップダウンリストを表示させたり、PreferencesでDebugの項を表示させるだけでもOKです。
これは、このショートカットキーを処理しているのはDebugUIプラグイン(org.eclipse.debug.internal.ui.DebugUIPlugin.start()からのorg.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager.loadLaunchShortcuts())で、こいつは自動的にスタートしてくれないからです。上記のようにRun/Debug履歴を表示するとかPrferencesを表示するとかのアクションを取らないとスタートしてくれず、その後でないとショートカットキーは処理されないということになってます。
昔PDTにもそんなような不具合があったような気がします(^^;(今はどうだか知りませんが)
PDT絡みで懐かしいので記事にしましたが、これって昔からある話なんじゃ...?

余談ですがウチの環境では自作プラグインがDebugUIを参照しているのでeclipse起動時にスタートするようになっていて、こういう不具合は発生しませんでした。

思い出した。たぶんPDTのはDebugDaemonが自動スタートしないのでブラウザ側からデバッグセッションを開始できないってやつでしたね。どうでもいいけど。

 

コメント (0) |  トラックバック (0) | 

eclipse-jeeとdark theme

2014-07-15 19:06:44 | 雑記

私はDark themeは「目が腐る」と思っているのでどうでもいいんですが、
Bug 438175 – [Themes] White background using Dark theme
Eclipse IDE for Java EE Developersパッケージで、テーマをDarkにしてもエディタの背景が白いままだぞっ!
てな話がありまして。確かにそうなりますね。なんでやねん。
で、探ってみたらば。
とりあえずorg.eclipse.tm.terminal_3.2.300.201406060905.jarの/css/org.eclipse.tm.terminal.stylesheet.dark.cssを棄ててしまえばよさげな感じで。
「目が腐る」のでそれ以上追及してませんが。
たしかこの件は少し前StackOverflowでも質問が上がってて、それはEclipse Color Themeを使えという回答で終わってたと思いますが。実はやっぱりeclipseのバグだったと。

 

コメント (0) |  トラックバック (0) | 

FilteredTree(LOL)

2014-07-14 16:55:32 | 雑記

Bug 438585 – [Dialogs] Cannot find items equals initial text in org.eclipse.ui.dialogs.FilteredTree
全然知りませんでしたけど。
org.eclipse.ui.dialogs.FilteredTreeって、初期表示文字と同じ文字列を入力すると何も入力されなかったものとみなされてしまう、と。
例えばPreferences画面を開くと、ツリーの上のフィルタ用テキストボックスに初期表示文字として「type filter text」とありますが、これを手入力すると、途中まではフィルタリングされますが「type filter text」まで入力した時点でフィルタリングが解除されてしまいます。
たぶんここらへんじゃないかと思いますが。(馬鹿馬鹿しいので確認はしてません)
eclipse.platform.ui.git - Eclipse Platform UI
|boolean initial = initialText != null
|        && initialText.equals(text);
|if (initial) {
|    patternFilter.setPattern(null);
|} else if (text != null) {
|    patternFilter.setPattern(text);
|}
「おちゃめ」な仕様ですね。さすがEclipse。

最近「開いた口が塞がらない」バグとか「バカヤロー」バグとか「目が腐る」Dark themeとか(ry

 

コメント (0) |  トラックバック (0) | 

Lunaでサポートされたエディタの画面分割ですが(2)

2014-07-04 18:34:49 | 雑記

ところで、
Bug 432820 – [KeyBindings] DBCS4.4: Split Editor (Horizontal) key binding does not correct in JP keymap
の「修正」でorg.eclipse.uiのplugin.xmlに追加されたのは

<key
    locale="jp"
    commandId="org.eclipse.ui.window.splitEditor"
    contextId="org.eclipse.ui.contexts.window"
    sequence="M1+M2+-"
    schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
  <parameter
       id="Splitter.isHorizontal"
       value="true">
  </parameter>
</key>

これが実際の場面で有効にならない(ヒットしない)のは何故なんだろうと思ってたら。

バカヤローーー

localeは"jp"じゃなくて"ja"だーーー

いや一見して気づかない私も相当にタコですけども(^^;
これは一目見て気づくべきバグでしたね(^^;;
一応 locale="ja" と locale="ja_JP" で期待通り動作することを確認はしましたが。
いやはや...

 

コメント (0) |  トラックバック (0) | 

Lunaでサポートされたエディタの画面分割ですが

2014-07-03 19:31:04 | 雑記

しょうもない話なので以前 4.4M6 - Dead Zone 記事にした時には触れなかったんですが、エディタ水平分割の標準キーバインディング「Ctrl+_」は日本語キーボードでは機能しません。「_」は日本語キーボード(109)では「Shift+バックスラッシュ」なので「Ctrl+_」は「Ctrl+Shift+バックスラッシュ」(Remove Block Comment)になってしまうからです。なのでPreferences>General>Keysでキーバインディングを変更する必要があります。(さもなくばメニューからWindow>Editor>Toggle Split Editor (Horizontal))

で、この件についてはバグレポが上げられていて、
Bug 432820 – [KeyBindings] DBCS4.4: Split Editor (Horizontal) key binding does not correct in JP keymap
Localeがjpの時は「Ctrl+Shift+-(マイナス)」で水平分割できるように修正されたことになっています。
というわけで、メニュー表記は「Ctrl+_」のままですが(これまたひとつのバグですな)日本語版Windowsで日本語キーボードを使う普通の環境では、エディタの水平分割は「Ctrl+Shift+-」になります。

という、しょうもない話を書いたのは
Bug 438562 – [KeyBindings] Inconvenient default shortcut for split editor

で、この下らない話がまだ続いていることを知ったからです(^^;

が。
しかし。
ここからが本題で。
『「Localeがjpの時は」であって「日本語キーボードの時は」ではありません。
Eclipseにはキーボードレイアウトの概念は無いので、この対処方法はしょうがないっちゃしょうがないんですが、Locale(国・言語)とキーボードレイアウトは関係が無いので、「頓珍漢」と言わざるを得ません。WindowsにしろLinuxにしろキーボードを任意に設定できるのは常識だと思うんですが。英語版Linuxで日本語キーボードを使うこともありますし、その場合上記のbugfixは全然無意味です。』
という話を書こうとして、Windows 8.1とLinux Mint 17でいろいろ検証してみたらば。
なんだか怪しげな雲行きに...
MintではLocaleをjpにしてもCtrl+Shift+-は効きませんでした。
Windowsでは上記Bug 432820の修正を外しても(plugin.xmlからCtrl+Shift+-を削除しても)、Ctrl+Shift+-は依然として有効でエディタは水平分割されました。

Windowsの方でトレースしてみたら...
Ctrl+Shift+-を押下すると、処理の中で
org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.generatePossibleKeyStrokes(Event)
が呼び出され、入力されたキーの「候補」が3つ生成されます。firstが「Ctrl+Shift+-」なのは当然として、secondが「Ctrl+_」、thirdが「Ctrl+Shift+_」になっていました。で、それらが
org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(List, Event)
に渡されて、結果、firstの「Ctrl+Shift+-」ではなく、secondの「Ctrl+_」がヒットしてToggle Split Editorコマンドが実行されていました。

なんじゃこりゃーーー

意味分かりません(-_-)

一方Mint(ただしWindowsホストのVMware環境)では、謎の3候補は「Ctrl+Shift+-」「Ctrl+=」「Ctrl+Shift+=」になっていて。Ctrl+_のToggle Split Editorコマンドが実行されるはずもなく。

卒倒しそうだ(-_-)

 

コメント (0) |  トラックバック (0) | 

続CSS3

2014-06-29 11:11:55 | 雑記

CSSプロファイルのデフォルトですが。製品構成プラグインでも設定できるようです。製品構成プラグイン(パッケージングによって異なりますが、「Eclipse SDK」の場合はpluginsフォルダのorg.eclipse.sdk_4.4.0.v20140606-1215になります)のplugin.xmlにこんな記述があるので

<extension id="ide" point="org.eclipse.core.runtime.products">
  <product name="%productName" application="org.eclipse.ui.ide.workbench" description="%productBlurb">
      <property name="windowImages" value="eclipse16.png,eclipse32.png,eclipse48.png"/>
      <property name="aboutImage" value="eclipse_lg.png"/>
      <property name="aboutText" value="%productBlurb"/>

ここにwst.css.default_profileプロパティを追加します。

<extension id="ide" point="org.eclipse.core.runtime.products">
  <product name="%productName" application="org.eclipse.ui.ide.workbench" description="%productBlurb">
      <property name="wst.css.default_profile" value="org.eclipse.wst.css.core.cssprofile.css3"/>
      <property name="windowImages" value="eclipse16.png,eclipse32.png,eclipse48.png"/>
      <property name="aboutImage" value="eclipse_lg.png"/>
      <property name="aboutText" value="%productBlurb"/>

で、eclipse -clean。

コメント (0) |  トラックバック (0) | 

CSS3

2014-06-28 09:29:17 | 雑記

元ネタは
Eclipse Community Forums: Newcomers » How to get CSS3 autocomplete working in Luna WTP
(workspace外の)CSSファイルを編集すると補完でCSS3が候補に出て来ない
→デフォルトはCSS2なのでworkspace内にProjectを作ってCSS3 profileを設定しなされ
という話で。
デフォルトはCSS2なんだ...

そのデフォルトを指定しているのは org.eclipse.wst.css.core プラグインのplugin.xmlで、
<profile
    name="%cssprofile_css3.name"
    uri="cssprofile/cssprofile-css3.xml"
    id="org.eclipse.wst.css.core.cssprofile.css3">
</profile>
<profile
    name="%cssprofile_css2.name"
    default="true"
    uri="cssprofile/cssprofile-css2.xml"
    id="org.eclipse.wst.css.core.cssprofile.css2">
</profile>
のようになってるので、「default="true"」をCSS3のほうに移して、eclipse -cleanで起動すればOK。

最初、CSS3固有のやつって何だろうと思いつつ
CSS3 Introduction
を参照しながら試してたんですが。ProfileをCSS3にしても
CSS3 Borders
の"border-image"が補完候補に現れず...
HTML5もそうですが、CSS3も、どこまで対応しているのか怪しいようですね。どういう風に開発しているのか(いないのか)知りませんが、少なくともw3cをフォローアップする気は(eclipse開発者には)全然無さそうですね。
Bug 427969 – [hotbug_request] Undefined attribute name for HTML 5
なんかもパッチ提供してくれたのはExadel(!)の人みたいだし。
やる気が無いならやめればいいのに。

 

コメント (0) |  トラックバック (0) | 

次はMars

2014-06-26 08:41:31 | Weblog

Eclipse 4.4 Lunaは既に終わっていて。次は1年後のMarsです。
スケジュールありきの定期リリースなんで、known bugてんこ盛りでの放出なのはしょうがないと思うけど、なんていうかもう「定例バージョンアップ」というより「定例バグ出荷」に見えます。開発途上でバグだらけだけどリリース期日が来たからはいどうぞ。みたいな。

Bug List

今に始まったことではないのかもしれませんが(^^;
Juno以降は特に悲惨(^^;

 

コメント (0) |  トラックバック (0) |