トップ 追記

谷日記

http://turaki-tani.blogspot.com/ に移行します。

本ページは谷 列樹(たに つらき)の日記(備忘録)妄想です。
実在の団体・人物とは関係ないと思います。

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|
2008|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|11|12|
2011|04|05|08|09|

2011年09月02日 [長年日記]

移転予定

bloggerに移転予定。こちら。http://turaki-tani.blogspot.com/


2011年08月11日 [長年日記]

OOo(Libre)

拡張機能で、メニューのヘルプの中にコマンドを設置したくて、メニューカスタマイズ用のXMLを作るのに四苦八苦。

ココに仕様とかサンプルとか書いてあるけど、素直にサンプル通りにやるとヘルプの横にコマンドが出来てしまう。ヘルプの中に追加するには、MergePointのValueを「.uno:HelpMenu\.uno:About」とかにすればいけるってことを調べるのに小一時間かかったのでメモ。

Visual Studio 2010

の評価版をインスコして触ってみる。.NET Framework 4が勝手についてきたため、社内の標準環境(3.5)では動作しないexeが出来るハメに。プロジェクトのプロパティのコンパイルのタブの中にある、詳細コンパイルオプションをポチッと押すと.NET Frameworkのバージョンを選べる画面が出てくるので、そこで設定。


2011年05月12日 [長年日記]

OOo(Libre)

のCalcでCtrl+Cのショートカットキーを無効にするBasicコード。

  oCfgMng = ThisComponent.getUIConfigurationManager()
  oShortMng =  oCfgMng.getShortCutManager()
  aKeyEvent = CreateUnoStruct("com.sun.star.awt.KeyEvent")
  aKeyEvent.KeyCode = com.sun.star.awt.Key.C
  aKeyEvent.Modifiers = com.sun.star.awt.KeyModifier.MOD1
  oShortMng.setKeyEvent(aKeyEvent, ".uno:Cancel")

ついでに右クリックしたときのメニューにコピーがでないようにするコード。

Sub registerContextMenuInterceptor
	oDocView = ThisComponent.CurrentController
	oContextMenuInterceptor = CreateUnoListener("ThisDocument_", "com.sun.star.ui.XContextMenuInterceptor")
	
	oDocView.registerContextMenuInterceptor(oContextMenuInterceptor)
End Sub
	
Function ThisDocument_notifyContextMenuExecute(ContextMenuExecuteEvent As Object) As Variant
	oATContainer = ContextMenuExecuteEvent.ActionTriggerContainer
	
	'remove all menu entries:
	For I = oATContainer.Count - 1 To 0 Step -1
		' oATContainer.removeByIndex(I)
		If InStr(oATContainer.getByIndex(I).Dbg_Properties, "CommandURL") > 0 Then
		  If oATContainer.getByIndex(I).CommandURL = "slot:5711" Then
		    oATContainer.removeByIndex(I)
		  End If
		End If
	Next I
	
	ThisDocument_notifyContextMenuExecute = com.sun.star.ui.ContextMenuInterceptorAction.EXECUTE_MODIFIED
End Function

2011年04月18日 [長年日記]

OOo → LibreOffice

OOo3.2.1とかOOo3.3とかで作成した設定ファイル(設定ディレクトリ)をLibOで読み込んだらどうなるかってのを試してみた。今のところ特に問題なさそう。ついでにWindowsXP ←→ Windows7でも特に問題なかった。網羅的に試したわけではないので、なんか秘孔みたいな設定はあるかもしれません。(特にOS間での移行は、ファイルパスとかフォルダパスを保存してありそうなとこでなんかエラーでるかも)

Firefox4

突然自宅のFirefoxでニコニコ動画が再生出来なくなったので、flashプラグイン入れなおしたり、Windowsアップデートの内容確認したり、マシン再起動したりしてみたけど変わらず。関係ないだろうな、と思いつつ、試しにFirefox3→Firefox4にアップデートしたら何故か動くようになった。見た目、Chromeっぽくなって、なんか動作もシャキシャキしてて、結果的にアップデートして良かった。


2010年12月09日 [長年日記]

山形出張

山形出張で一泊。ホテルのクオリティが妙に高かったのと、朝食に味噌汁のかわりについてきた、いも煮というものがうまかったのと、タクシーの運ちゃんの方言が本気すぎて何言ってるのかよくわからんかったのと、駅弁に入ってた梅干を食ったら実はサクランボだったのが印象的。

本日のツッコミ(全1件) [ツッコミを入れる]

おかる [ギョウサン 喰ったか?]


2010年11月12日 [長年日記]

Wordで書式の検索

Wordで手で検索をやる場合、検索文字列に何も入れずにオプションで段落の書式とか選んでやると、その書式が設定されている任意の文字列を検索してくれますが、それをマクロでやろうと思ってハマる。マクロ記録でとったコードとかマイクロソフトのサンプルだとかを参考に、色々条件を変えながらテストするも、全く検索にヒットしなかったり、逆に無限ループしたり。結局、ワイルドカードのオプションを有効にして、検索文字列を「<*>」にしたらなんとか動くようになった。Excelのマクロは割と分かってきたけど、Wordのマクロはまだよくわからん。ってかググると英語の情報ばっかでてくるのがOOoのマクロと一緒www

Perl(AZ_OK)

大量のファイルを処理する必要があって、今まではシェルとコマンド類の組み合わせとか、どこかから拾ってきたアプリとかで、なんとか処理してきたけど、今回はちょっと複雑な条件分岐が必要だったので、Perlでスクリプトを組んで処理したら、さくっとできて感動した。こんなことならもっと前からPerlで専用スクリプト組んどきゃよかった。

ちなみにZIPファイル操作用のモジュールで成否判定に利用する定数に「AZ_OK」とかいうのを 発見(*゜Д゜) ムホムホ


2010年11月09日 [長年日記]

OOoマクロでの複数ファイル選択ダイアログ(Windows Viata/7の場合)

Windows ViataかWindows 7で、以下のようなマクロを実行すると、ファイルを複数選択できない模様。LibreOfficeとNovell版OpenOffice.org3.2.1で確認。(多分本家OOo3.2.1でも同じ。)

  oFilePicker = createUnoService("com.sun.star.ui.dialogs.FilePicker")
  oFilePicker.setMultiSelectionMode(True)
  ret = oFilePicker.execute()

んで以下のように初期化コードをいれると複数選択可能になります。(ツール>オプションの設定でOpenOffice.orgのダイアログを使うにチェックを入れるだけでも良いですが、ダイアログの見た目が違っちゃうので。)

  oFilePicker = createUnoService("com.sun.star.ui.dialogs.FilePicker")
  oFilePicker.initialize(Array(com.sun.star.ui.dialogs.TemplateDescription.FILEOPEN_SIMPLE))
  oFilePicker.setMultiSelectionMode(True)
  ret = oFilePicker.execute()

2010年09月26日 [長年日記]

痛ラジコンヘリなど

秋葉原にいくやさんを迎撃しにいった際に、購入した(買わないとあしえさんの怪力で捻られそうな雰囲気だったので)、痛ラジコンヘリを箱から出して飛ばしてみた。


k-on heri 1

箱から出したとこ
k-on heri 2

意外と操縦むずいっす。あと音と風が結構すごい。ってか軟着陸できんのこれ?修行が足りんだけなのだろうか。

要救助者(↓)が待ってるというのに。
せんとくん

ちなみに、ネ申にオヌヌメ(洗脳)されて買った「リトルバスターズ エクスタシー」というゲェムもちょびちょびやってます。買うときは全く意識してませんでしたが、よく箱を眺めてみると初回限定版とか書いてあって、アマゾンの中古品よりも安く買えたので、ラッキーだったらしい。(ってかこれ転売すると利益でるんじゃなかろうか)


2010年09月01日 [長年日記]

Office2010のODFフィルタ

検証用のWindows7マシンに入っていたOffice2007をOffice2010にアップグレード。(なんか元々アップグレードできる権利のついたライセンスだったらしい)

とりあえず最初に試したのは、かなり良くなったとどっかで聞いた、ODF変換機能。ちょっとうっとうしいdocファイル群を用意して、Word 2010で開いてodtに変換したあと、それをOOo Writerで確認してみるというのをやってみた。結果はいきなりOOoで変換するよりもかなり良い時と、ダメダメな時(最初からOOoで変換したほうが良い)にわかれました。具体的にどういうパターンの時に結果が分かれるのかまでは検証できてませんが。。。

ちなみにOffice2010のデフォルトのファイル形式のOpen XMLにマクロを入れようとすると、拡張子の後ろにmをつけろ、と怒られて保存できないことを初めて知りました。

ついでにスパークラインとかいう新機能を使ってみる。面白いけど必須の機能って感じじゃないなー。


2010年08月18日 [長年日記]

液晶テレビ

盆休みに実家で、テレビの画面の右上に「アナログ」って出てるのをリアルで見せられて、切なくなったので、急遽ヤマダデンキで5万くらいの液晶テレビを購入。安くなったもんだ。(マンションにある数年前10万くらいした液晶テレビのほうが画面がちっさい)

せんとくんまんじゅう

実家からの帰りの際に、駅でおみやげに物色すると、せんとくんグッズがかなりあった。とりあえずパッケージイラストのインパクトが一番でかかった、せんとくんまんじゅうを購入。せんとくんストラップも買えばよかった。


2010年07月29日 [長年日記]

Visual C#

なんかちっさいダイアログが出てくるアプリ(exe)を作ってくれと言われたので、久々にVisual Studioを起動してC#で作ってみた。(Visual hogehogeならなんでも良かったんだろうけど、とりあえずC#しかインスコしてなかったので。)GUIの操作方法がわかんなかったり、そもそもC#の文法がわかってなかったりしたけど、ググりながら適当にやったらサクッと動くものが出来た。Visual Studio便利すぎ。


2010年07月12日 [長年日記]

proxycfg -u

Windows XPで、Proxy越しじゃないとインターネットに繋がらない環境で、Windows UpdateとかSecurity Essencialsの更新とかがうまくいかない場合、コマンドプロンプトで「proxycfg -u」とかやるとうまくいく場合がある。わすれないようにメモ。

hadoopとか。

hadoopとかそろそろ実際に試してみんといかんなーと思いつつ、自分で片手間で試すのはちょっと重い。なので、社内のメールサーバーをIMAPに移行して、データ置き場にhadoopクラスタって感じのシステムをどっかの会社にやってもらえないかなーと妄想中。(まず予算つかないといけませんが。)


2010年06月11日 [長年日記]

山王際

ちょっと前から獅子舞の首が会社の受付に飾ってあったのが、今日はさらに進化してたので記念に写真。

神輿

鷲宮

出張で、久々に栃木。なんか道中の鷲宮駅で明らかに風景に馴染まないTシャツにGパンの連中が長いカメラを持って降りていきましたよ。あれが噂の聖地巡礼というやつか。


2010年05月18日 [長年日記]

Ruby + OOo

Windows機にActiveRuby1.8.7を突っ込んで、以下のようなスクリプトを動かしてみた。

  require 'win32ole'
  objServiceManager = WIN32OLE.new('com.sun.star.ServiceManager')
  
  Stardesktop = objServiceManager.createInstance('com.sun.star.frame.Desktop')
  dispatcher = objServiceManager.createInstance('com.sun.star.frame.DispatchHelper')
  
  oNewdoc = Stardesktop.loadComponentfromUrl('private:factory/scalc', '_blank', 0, [])
  oTestdoc = Stardesktop.loadComponentfromUrl('file:///C:/tmp/test.ods', '_blank', 0, [])
  
  oNewController = oNewdoc.getCurrentController()
  oTestController = oTestdoc.getCurrentController()
  
  oNewFrame = oNewController.getFrame()
  oTestFrame = oTestController.getFrame()
  
  oTestSheets = oTestdoc.getSheets()
  oTestSheet = oTestSheets.getByIndex(0)
  oTestController.setActiveSheet(oTestSheet)
  
  dispatcher.executeDispatch(oTestFrame, '.uno:SelectAll', '', 0, [])
  dispatcher.executeDispatch(oTestFrame, '.uno:Copy', '', 0, [])
  
  oNewSheets = oNewdoc.getSheets()
  oNewSheet = oNewSheets.getByIndex(0)
  oNewController.setActiveSheet(oNewSheet)
  
  dispatcher.executeDispatch(oNewFrame, '.uno:Paste', '', 0, [])

いつか自分でRubyを書かなきゃならん時がくるだろうなー、とは思っていましたが、まさかWindowsマシンで↑のような変なモノを試すことになるとは思っていませんでした。

7-zip

解凍圧縮ツールをアレコレ試す。5, 6個試して、速度と使い勝手のバランスが取れてて、今回の要件に一番しっくりする7-zipにとりあえず落ち着きました。

本日のツッコミ(全2件) [ツッコミを入れる]

みなり [私は結局・・・ LhaForge に落ち着いています。 悪くないですよ:)]

あきら [私はExplzhを使っています 昔シェアウェアだったときに払っていたしtgzとかjarも開けるしねー]


2010年05月07日 [長年日記]

Ubuntu

10.04をLet's Noteにインスコ。昔は3Dなんて贅沢品はもってのほかと思っていたのですが、最近はむしろいいんじゃねと思うようになってきたので、とりあえずグリグリ回転させて喜んでみたり。


2010年04月26日 [長年日記]

OOoの文字囲み線

Wordにある文字の囲み線の機能(選択中の文字が□で囲まれる)がOOoのWriterには無くて、メニューの挿入→枠から「文字として」とか選択するとそれらしいモノはできるものの、手順が複雑なので、マクロ化。

  oDoc = ThisComponent
  oSelection = oDoc.getCurrentController().getSelection()
  oTextRange = oSelection.getByIndex(0)
  oText = oTextRange.getText()
  oCursor = oText.createTextCursor()
  oCursor.gotoRange(oTextRange, False)
  
  oFrame = oDoc.CreateInstance("com.sun.star.text.TextFrame")
  oFrame.AnchorType = com.sun.star.text.TextContentAnchorType.AS_CHARACTER
  oFrame.WidthType = 0  
  oFrame.HoriOrient = com.sun.star.text.HoriOrientation.NONE
  oFrame.VertOrient = com.sun.star.text.VertOrientation.LINE_TOP
  
  oText.InsertTextContent(oCursor, oFrame, False)
  oFrame.setString(oCursor.getString())
  oFrame.BorderDistance = 0
  oFrame.BottomMargin = 0
  oFrame.TopMargin = 0
  oFrame.LeftMargin = 0
  oFrame.RightMargin = 0
  oCursor.setString("")

エラー処理は入れてません。元に戻す処理も入れてません。見た目がWordと微妙に違うのが難点。


2010年04月21日 [長年日記]

OOoのLenB関数とかMidB関数とか

マクロ内で使われるLenB関数とかMidB関数とかは、文字コード変換の問題だったり本気のバイト(バイナリ)操作があったりして、いかんともしがたいパターンがあるけど、シート上で利用される数式上のLenB関数とかMidB関数だったら、ほぼ100%普通の文字列処理でいけるんじゃなかろうか、という予想に基づいて、セル上の数式として利用されることを想定したなんちゃってLenB, MidBをマクロで作ってみた。こちら。


2010年04月19日 [長年日記]

lotus domino/notes

lotus domino/notesのトライアル版(英語版)をダウンロードしてインスコ&セットアップ。notesのほうは日本語もあったっぽいけど、dominoは英語しかトライアル版がなかったので、ついでにnotesも英語版をインスコ。dominoのセットアップがかなりめんどいです。(dominoはサーバー製品の詰め合わせっぽいので当たり前ですが。)

ただ、本来試したかったのは、notesdbと呼ばれるモノ。最初はDBというくらいだからdomino内のサーバー製品の一部だと勝手に思い込んでて、手元のノートPCでhttpサーバーとか立ち上げるハメになりましたよorz

なんかおかしいと思ってググってみると、そもそもnotesdbってのは、notes内でユーザーが作成できるアプリケーションのことで(ファイル管理DB的な使い方が多い模様)、notes単体でも評価可能だったらしいことが、やっとこさわかってきました。もうちょっと事前に調べればよかった。。。

追記:notesのAPIを使ってnotesdb内に保存されている添付ファイルやOLEファイルを吸い出すスクリプトとかをしこしこ試す。EMBED_ATTACHMENT(前者)とEMBED_OBJECT(後者)で微妙に扱いを変える必要があるのにハマったけど、概ねなんとかなりそう。(前者はextractfileメソッド、後者はActivateメソッドを使用したあとそのOLEのAPI経由で保存)

マイクロソフトのイベント

Microsoft Office & SharePoint Conference 2010というものに登録。冴子先生に会えるのかな。ハァハァ


2010年04月06日 [長年日記]

Calcが100万行

DebianマシンのOOo(lenny-backports)のバージョンを3.2に上げてみたらCalcの行数が100万行を超えてました。桁がでかすぎてなんか怖いwww

Office Migration Planning Manager (OMPM)

MS Office 2003から2007へアップグレードするために、既存Officeファイルを棚卸しして統計解析やらするツールだそうです。こちら。メモ。

Professional Analysis Wizard

ついでにStarSuiteについてる既存Officeファイルの棚卸ツール。マニュアルはこちら。こっちはMS Office 2003からStarOffice(OOo)への移行の際の問題点に主眼をおいたものだそうです。


2010年03月24日 [長年日記]

Access

(何故か)Excelのマクロをもりもり書いてて、いざ動かすとシート上のデータが65000行を突破してしまったので、急遽、(何故か)Accessに変更。(Office2007はNG。MySQLとかPostgreSQLとかでも良かったんですが、最終的にExcelと連携するならAccessでしょという安易な理由。)

SQL直書きでクエリを実行したいのに、どのメニューにあるのかわかんなくて微妙にイラっとしたり、そもそもなんでこんなことをやってるんだと、アイデンティティが崩壊しそうになったりもしましたが、やっぱ良くできてるなー。

mso-dumper

というものがKohei Yoshidaさんのところで公開されています。コチラ。Pythonで作成されたMS Officeファイルのバイナリデータを直接解析するツールとのことで、試すと、Windows XP上でも動きました。メモ。


2010年03月16日 [長年日記]

D・V・Dとかキャストパズルとか

某所で(ブルーレイ環境で)見たサマーウォーズのDVDが近所のコンビニにうってたのでつい購入。いくやさんにブルーレイ環境くらい整備しろやゴルァと脅されていたのに妥協してすみません。

ついでに某所で久々にキャストパズルやって火がついたので新しいのを何個か購入。(偶然、ほぼ同時に結婚式の引き出物?でも貰った。)難易度6のCAST SQUARE(キャストスクエア)はプラプラさせてると偶然とれました。中の構造をみるとプラプラさせるのが正解っぽい。それ以外はまだとれてない。

本日のツッコミ(全1件) [ツッコミを入れる]

ikuya [裏切り者がおる。]


2010年03月01日 [長年日記]

OOo BasicからAccessを操作する

というのを試す。シンプルに、OSにODBCドライバを設定して、それ経由でmdbファイルにアクセスするという方法がまず思いつきますが、SQLを実行できるだけなので、Accessのレポートとかクエリーとかフォームとか使いたかったら、これだと無理です。なので、CreateObject("Access.Application")とかしてみると、COMとしてアクセス可能でした。

ただ、SQLを実行したあと、Access VBAだったら普通の記述のResultset.Fields("カラム名")とかやるとそんなメソッドねぇぞコラと怒られてちょっとハマりました。で、Resultset.Fields.Item(0).Valueと昔風にカチッと書き下ろすと通ります。要は、OOo Basicでは連想配列的なモノとか構造体的なモノとか省略記法とかに対応出来ていないのが悪いっぽいです。(VBAのほうが言語仕様が新しくて、色んな機能があります。)今回はたまたま別の書き方がありましたが、メソッドの引数にその手のもの求められたり、メソッドの戻り値がその手のものだったりして、別の記述法が無い場合は、OOo Basicでは厳しいかもしれません。

そんなこんなで、まとめると、OOo BasicでAccess.Application呼び出しても動くことは動きます。ただ個人的には、逆の、Access VBAからOOoをCOMとして呼び出して操作する、ってやり方のほうが、下位互換的で、安定する気がします。(こっちのほうも試して、動きました。)


2010年02月23日 [長年日記]

VBA

なぜかここしばらくExcel VBAを書いてます。OSのライブラリとかCOMオブジェクトとかと相性が良いので、所詮Officeのマクロ機能なのにそんなことまでできていーの?って感じ。ただ調子に乗って環境に依存する処理をやりすぎて、何回か泥沼にはまりました。


2010年02月19日 [長年日記]

OOoの差し込み印刷機能

を外部のプログラムから操作する方法を調べると、こことかここが引っかかった。

とりあえず手元でも試してみると、「ツール」->「差し込み印刷ウィザード」から設定済みのテンプレートを作っておいて、データソースも作っておいた状態で、差し込み印刷をマクロから実行することは出来ました。「ファイル」->「新規作成」->「ラベル」よりもテンプレート作成が難しいのが難点かなー。

つーか、そもそものところをよく考えると、差し込み印刷の機能って、プログラム組まなくてもGUIからこんなことも出来ますよすごいでしょ的な機能なので、プログラム組むという前提なら、差し込み印刷の機能使わなくても文書内の文字列の置換とかだけで充分いけます。


2010年02月15日 [長年日記]

Windows2000

Windows7の次は何故か時の流れを遡ってWindows2000の環境をいじる。かなりギャップを感じましたが、冷静に10年もたってることを考えると、いうほど進化してない気もします。

Yシャツ

帰りにYシャツを買いに西武百貨店に寄り道。エスカレーター降りたとこに置いてあったシャツがスーツ買えるくらいの値段でちょっとびびるも奥にいくと普通の値段のやつも置いてて安心。


2010年02月03日 [長年日記]

黄色い新幹線

yellow shinkansen

xdocdiff

MS OfficeとかPDFとかODFとかのファイルのdiffをとるツールらしいっす。こちら。 さらにこのツール内で各フォーマットからテキストデータを抽出するのにつかわれているらしいのがこちらのxdoc2txtというツールらしい。とりあえずメモ。

本日のツッコミ(全2件) [ツッコミを入れる]

taichi [実験?テスト?用の新幹線ですね。時々走ってますね。]

あきら [TortoiseSVNとかで使われていますねー]


2010年02月02日 [長年日記]

Windows 7

新しく来た検証用PCにWindows7をセットアップ(XPにダウングレードされたモノが納品されてきたのでリカバリDVDで工場出荷状態に戻す)。とりあえずWindows updateしたり、security essentials入れたり、色々設定とか。vistaよりも良くなってる感じがする。firefox入れて、OOo入れて、MS Office 2007入れてひとまず完了。なんか家のPCもそろそろ入れ替えたくなってきた。

本日のツッコミ(全2件) [ツッコミを入れる]

あきら [自宅は64ビットのWin7です!]

tani [Win7とは関係ないですが、地味にMicrosoft Security Essentialsがいけてる気がする(検証..]


2010年01月27日 [長年日記]

MySQL(Linux) ←→odbc & OOo Basic(Windows)

Linux上のMySQLをWindowsマシンのodbcドライバ & OOo Basicから操作するというのを試してみました。(drivermanagerサービス使うほうのやり方。こっちだとわざわざBaseでデータソース登録しなくてもいける) MySQLの設定方法とか使用方法などを結構忘れてて、ちょっと苦労しつつ、やっと通るようになったなと思ったら日本語データが文字化けorz。何から何まで全部utf8で統一されてるのに、と思っていたら、原因はWindowsマシンのodbcドライバの設定でした。Windows管理ツールのデータソースの設定画面で「Details」→「Misc Options」の「Character Set」の設定をよかれと思って「utf8」にしてたんですが、何故かここを「sjis」に変更すると文字化けが直りました。なんぞこれ。どっかで余計な文字コード変換処理が動いてる悪寒。

追記:↑は多分Linux内とそこから通信で出入りするところは全部utf8、 Windowsにパケットが入ってきてODBCさんが解釈した時点でsjis(≒cp932)に変換されて、そのコードがOOo Basicさんのエンジンによって再度Unicodeに変換されるという流れのようです。 どうもOOo Basicには、外部から取り込んだデータを自動的に(勝手に)cp932だとみなしてUnicodeに変換したり、逆にUnicodeの内部データをcp932に変換して出力したりする、ある意味おせっかいな機能があるみたいです。


2010年01月22日 [長年日記]

test

更新テスト

フーリエ変換

Excelではツール->アドイン->分析ツール, 分析ツール - VBAの機能追加でできるっぽい。Gnumericにはデフォでそれっぽい機能がついてた。OOoではWikiにそれっぽい記述がありましたが、今は無理そう。マクロで計算させたらいけそうですが、そもそも私にはフーリエ変換が理解できない(Wikipediaの記事を見て心が折れたwww)ので、計算プログラムも書けない罠。なおコチラのサイトを見ると、Excel VBAでフーリエ変換を行っていて、それをOOo Basicに移植したものもあるそうです。

Ubuntu, AC(Active Directory), DC(Domain Controller)

UbuntuマシンをWindows Active Directory domainに参加させて認証させる話。メモ。ココとかココとかもついでにメモ。


2010年01月19日 [長年日記]

OOo Basic シート切り替えイベント + 図形描画オブジェクト

シート上の図形描画オブジェクトを操作するマクロと、シート切り替えイベントを取得するマクロがあって、それぞれ単体なら正しく動作するのに、組み合わせると動かないといわれる。調べてみると、シート切り替えイベントの瞬間に、切り替え先のシート上の図形を操作しようとしてるせいだとわかりました。(シートが切りかわった瞬間には、まだシート上の図形オブジェクトは生成されてないっぽい感じ。)しょうがないので、無理やりXcallbackで割り込んでwait 100とか入れて対応。

ODFの整形

OOoの「ツール」->「オプション」->「読み込みと保存」->「全般」の「ODF形式でのサイズの最適化」のチェックを外すと、ODF(XML)が改行+インデントされた状態で出力されます。Javaプログラムでodsを解凍してcontent.xmlを処理してるんだけど、エラーが出る場合と出ない場合があると言われて、調べてみてこんなオプションがあるのに気づきました。(改行がはいっていようがいまいが正しいODFなので、どっちにしても作成されたJavaプログラムがおかしいことにかわりないんですが)


2010年01月12日 [長年日記]

Ubuntu 9.10が起動できない

今度はUbuntu 9.10が起動できなくなったとレッツノートが持ち込まれる。試してみるとどうもsda1(内蔵ハードディスク)のマウントのところでこけてるっぽいので、外付けハードディスクのUbuntuで起動。手動でsudo mount -t ext4 /dev/sda1 /mnt/hogehoge とかやると問題なくハードディスクの中身が見えました。よくわかんないながらも、とりあえずhomeだけバックアップとって、sudo fsck /dev/sda1 とかやってみると瞬間的に問題ないよと返ってきた。 嘘くさいなーと思いながらも、試しにもう一回再起動したら今度はちゃんとsda1をマウントして起動するようになりましたwww。なんで壊れたのかなんで直ったのか、さっぱりわかりませんwww。