ExtWikiでアクティブパネルの印刷をしようとし、タブの内容をiframeにコピーし、window.printを使って印刷するようにしたところ、最初の1ページしか印刷されないという現象に遭遇した。
同じ方法をExtJSのAPIドキュメントのタブパネルに試したところ、同じように1ページしか印刷されなかった。
同様な現象が出たのでこれは一般的な問題かと思い、http://www.sencha.com/forum/showthread.php?121909-SOLVED-How-to-print-the-document-on-tabpanel&p=563722 の質問を投げてみた。その後、iframeを見えるようにして確認をしたところ、1瞬、スクロールバーが見えることに気がついた。ステップ実行で1つ1つスタイルシートを適用したところ原因が判明。
結局この問題はdoc.cssにある「html,body {overflow:hidden}」の設定が問題だった。ExtWikiも初期にExtJSのAPIドキュメントの表示に似せようと、スタイルの設定を真似た為にこの設定が紛れ込んだようだ。
現在のExtJSはViewportを使用すると、上記のスタイルが設定されるので、この設定は不要であった。doc.cssに残っているのも歴史的な残骸かと思う。
作成した、ブックマークレット:ExtJS APIページの印刷
※上記は「Hide Inherited Members」と「Extend All Members」を反映しないので使い道はいまいちです
2011年1月23日日曜日
2011年1月13日木曜日
utf-8のjsファイルをextdocで処理する
今まで、utf-8のjsファイルのext-docでの処理が文字化けしてしまうため、一旦、s-jisにしてから、処理を行っていた。
今日、ext-docのバージョンが上がっていないかと、
http://www.sencha.com/forum/showthread.php?55214-ext-doc-ExtJS-style-JavaScript-comments-processor/page26
にアクセスしたところ、javaのオプションで
java -Dfile.encoding=UTF8 -jar path_to\ext-doc.jar ...
とすればいいという情報を見つけた。
試してみると、文字化けもなくうまく動作する。
utf-8 → s-jis はサクラのマクロでやっていたので、手間としてはそれほど変わらないが、正解がわかったのですっきり。
今日、ext-docのバージョンが上がっていないかと、
http://www.sencha.com/forum/showthread.php?55214-ext-doc-ExtJS-style-JavaScript-comments-processor/page26
にアクセスしたところ、javaのオプションで
java -Dfile.encoding=UTF8 -jar path_to\ext-doc.jar ...
とすればいいという情報を見つけた。
試してみると、文字化けもなくうまく動作する。
utf-8 → s-jis はサクラのマクロでやっていたので、手間としてはそれほど変わらないが、正解がわかったのですっきり。
2011年1月12日水曜日
ExtJSの問い合わせをするなら
ExtJSの問い合わせをする場合、日本語のフォーラム「Ext International」に質問しても最近は誰もレスをつけていない。さびしい限りだ。
少々面倒だが、見ている人の数が圧倒的に多い英語のサイトに投稿するのが結局速そうだ。
手順はこんな感じ
Ext-Helpにポストした投稿は
http://www.sencha.com/forum/search.php?do=finduser&userid=14691&contenttype=vBForum_Post&showposts=1&forumchoice%5B%5D=40
で調べられる。(14591は自分のユーザID)
少々面倒だが、見ている人の数が圧倒的に多い英語のサイトに投稿するのが結局速そうだ。
手順はこんな感じ
・問い合わせのテキストを作成し、翻訳サイト( http://www.excite.co.jp/world/english/ )等で翻訳する
・ソースのコメントやリテラルの文字列を英語にし、コードタグ([code][/code])でくくる
・http://www.sencha.com/forum/forumdisplay.php?40-Ext-Help でフォームにポストする
Ext-Helpにポストした投稿は
http://www.sencha.com/forum/search.php?do=finduser&userid=14691&contenttype=vBForum_Post&showposts=1&forumchoice%5B%5D=40
で調べられる。(14591は自分のユーザID)
2011年1月7日金曜日
winscpをバッチ処理で使用する
こんなこともできるらしい。
サクラのマクロに取り込めば、いろいろなことが自動化できそう
下記を1行でコマンドラインに打つ
参考
http://winscp.net/eng/docs/commandline
http://winscp.net/eng/docs/script_commands
実際に作って使っているのがこれ
・現在のファイルがextwiki-debug.jsか確認
・現在のファイルを保存する
・SJISにして名前を付けてextdoc用のフォルダに保存する
・ext-docに変換する
・生成されたファイル数が大量のためzipに固める
・zipをサーバのドキュメントルートにアップロードし解凍する
サクラのマクロに取り込めば、いろいろなことが自動化できそう
下記を1行でコマンドラインに打つ
"C:\Program Files\WinSCP\winscp.com" /command "open ""mashiki@shell.sourceforge.jp""" "put ""C:\DLSoft\develop\ext-doc-1.0.131\extwikidoc.zip"" ""/home/groups/e/ex/extwiki/htdocs/""" "exit"
参考
http://winscp.net/eng/docs/commandline
http://winscp.net/eng/docs/script_commands
実際に作って使っているのがこれ
・現在のファイルがextwiki-debug.jsか確認
・現在のファイルを保存する
・SJISにして名前を付けてextdoc用のフォルダに保存する
・ext-docに変換する
・生成されたファイル数が大量のためzipに固める
・zipをサーバのドキュメントルートにアップロードし解凍する
// ext-doc.js
var cmd, oe,
TARGET = 'extwiki-debug.js',
DOCDIR = 'C:\\DLSoft\\develop\\ext-doc-1.0.131',
SAVEAS = 'DOCDIR\\source\\extwiki.js',
MAKEDOC= 'java -jar DOCDIR\\ext-doc.jar'
+' -p DOCDIR\\source/extwiki.xml'
+' -o DOCDIR\\extwikidoc'
+' -t DOCDIR\\template/ext/template.xml'
+' -verbose',
ZIPDOC = '"C:/Program Files/Lhaplus/Lhaplus.exe" /c:zip /o:DOCDIR DOCDIR\\extwikidoc',
PUTFILE= '"C:/Program Files/WinSCP/winscp.com" /log=log.txt /command'
+' "open ""mashiki@shell.sourceforge.jp"""'
+' "cd ""/home/groups/e/ex/extwiki/htdocs/"""'
+' "put ""DOCDIR\\extwikidoc.zip"""'
+' "call unzip -o extwikidoc.zip"'
+' "exit"'
ws = new ActiveXObject("WScript.Shell"),
fn = GetFilename().replace(/^.*\\/,'');
// 現在のファイルがextwiki-debug.jsか確認
if (fn!==TARGET) {
ws.Popup('ファイル名"' + fn + '"は処理対象外です', 0, "ファイル名", 0);
} else {
// 現在のファイルを保存する
FileSave();
// SJISにして名前を付けて保存する
FileSaveAs(resolveVars(SAVEAS),0,1); // SJIS, CRLF
// ext-docに変換する
oe = ws.Run(
resolveVars(MAKEDOC),
1, // ウィンドウをアクティブにして表示する。
true // 終了するまでスクリプトの実行を停止
);
// zipに固める
oe = ws.Run(
resolveVars(ZIPDOC),
1, // ウィンドウをアクティブにして表示する。
true // 終了するまでスクリプトの実行を停止
);
// zipをサーバにアップロードし解凍する
oe = ws.Run(
resolveVars(PUTFILE),
1, // ウィンドウをアクティブにして表示する。
true // 終了するまでスクリプトの実行を停止
);
}
function resolveVars(path) {
return path.replace(/DOCDIR/g, DOCDIR);
}
ラベル:
ExtJs,
javascript,
winscp,
サクラエディタ
2011年1月3日月曜日
SourceForgeのDiff画面でサイドバーを非表示にするブックマークレット
SourceForgeのDiff画面は右側のサイドバーが大きく、せっかくソースを並べて表示できても、まったくもって見やすいとは言えない状態です。
下記で紹介しているブックマークレットはサイドバーを一時的に非表示にします。
SourceForgeの画面でサイドバーを一時的に非表示にする
ページ移動もしくはリロードすれば元に戻ります。
SourceForgeの収入源である広告の表示やクリックできるチャンスを損なうものではないと思っていますが、なにかお気づきの点があればご指摘いただければ。
下記で紹介しているブックマークレットはサイドバーを一時的に非表示にします。
SourceForgeの画面でサイドバーを一時的に非表示にする
ページ移動もしくはリロードすれば元に戻ります。
SourceForgeの収入源である広告の表示やクリックできるチャンスを損なうものではないと思っていますが、なにかお気づきの点があればご指摘いただければ。
登録:
コメント (Atom)