2015/01/28

OSX QuickLookでcsvを見やすくするプラグイン

quicklook-csv がグレートです。

OSX純正でもCSVのquick lookはできるけど、心なしか速くなった気がするし、最高

2014/02/26

PDFから画像を抽出する

xpdfってのを使うと出来るらしい。

xpdfのインストールは、homebrewで一発のはずが、
ftpで外に出ていけないので、
curl: (7) Failed connect to ftp.foolabs.com:21; Operation timed out
Error: Failed to download resource "xpdf"
Download failed: ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.03.tar.gz
とかでる。。。


ダウンロードURLを書き換えるために、
brew edit xpdf
を実行して
ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.03.tar.gz

http://gd.tuwien.ac.at/publishing/xpdf/xpdf-3.03.tar.gz
に変更する。
その後、
brew install xpdf
でインストールされるはず。


インストール後、
pdfimages -j hoge.pdf images
とすると、image-***.jpgがいっぱい出来る。
ありがたや。

2014/02/12

brewで入れたdisplay(imagemagick)が動かない時

brew uninstall imagemagick 
brew install imagemagick --build-from-source --with-x11
 
これでOK.
 
 

2013/11/01

haskellで正規表現

sudo port install hs-cabal
cabal-0.14.0 update
cabal-0.14.0 install regex-base
cabal-0.14.0 install regex-posix
cabal-0.14.0 install regex-compat
として、パッケージをインストールすべし。

2013/10/30

Appium 0.10.4のインストールから起動まで

  1. dmgでappを入れる
  2. Node.js系を入れる
  3. NODE_BINにnodeのパスを入れる
  4. Appium.appを起動する
  5. AppPathを入れる
  6. Launchを押す
  7. インフォボタンを押す

赤字が大事。ほんとうに大事。

これでも起動するだけ。
pythonからなぜか繋がらないので、自動テストはまだ出来ていない。
それは、またいずれ。

2013/10/18

antでUnknown Sourceが出る時

build.xmlのjavacのオプションに
 debug="on"
が必要だそうな。
なるほどね。

2013/10/15

WINSとかいうDNSをOSXから引く

OSXからWINDOWSのVMにつなごうとしても、WINSとかいうDNSを引けないので、繋げない。
静的IPにしてくれよと思うが、それは無理みたい。

いちいちwindowsマシンから名前を引くのがクッソ面倒なので、なにかいい解決策はないかと調べてたらあった。

 smbutil lookup WINDOWS-NAME

samba系のユーティリティみたい。
便利だ。

2013/03/13

背景色をhexで Spreadsheet::ParseExcel

M$の呪縛から解き放ってくれるのがSpreadsheet::ParseExcel。


色の指定がColorIndexなのが信じられない。
RGBとかhexで保存しておいてほしい。
この辺りがM$のセンスだよなぁ。





しかし、さすがcpan。
ColorIndexからhexを得る関数が用意されてる。
セルの背景色をゲットするには以下。

          my $cell=$sheet->{Cells}[10][10]->Value;
          my $fg_color = $cell->{Format}->{Fill}->[1];
          my $color=Spreadsheet::ParseExcel->ColorIdxToRGB($fg_color);

これでOK。

2012/10/03

Mountain Lionでgnuplotのインストール


XCodeでコマンドラインツールをインストールして、
sudo port install gnuplot
をすると、コケる。

sudo xcodebuild -license

をして、コマンドラインツールのライセンスを読めばOK.

2012/09/10

perlからevernote apiを使う


https://github.com/evernote/evernote-sdk-perl
はとてもバギーなので、
https://github.com/nobuoka/evernote-sdk-perl/tree/sample_code
を使うべし。サンプルコードも入っているのでとてもありがたい。

listNotebooksやfindNotesはメタデータなどしか返ってこない。
ノートの中身を見るにはgetNoteを使う。
そのサンプルは以下。

    my $notebooks = $note_store->listNotebooks( $auth_token );
    for my $notebook ( @$notebooks ) {
      my $filter = new EDAMNoteStore::NoteFilter();
      $filter->{notebookGuid} = $notebook->guid;
      my $notelist=$note_store->findNotes( $auth_token,$filter,0,10 );
      for my $n (@{$notelist->{notes}} ) {
        print Dump( $n->notes);
        print "- - - - - - - - \n";
        my $guid=$n->{guid};
        for my $b ($note_store->getNote( $auth_token,$guid,1,1,1,1) ) {
          #print Dump( $b);
          print $b->content;
        }
      }
    }


$notelist->{notes}
では$n->{guid}ができずに困っていた。
んでフォーラムを見たら
@{$notelist->{notes}}
とすべきと書いてあり、これで解決。

このあたりが、型にゆるいperlの嫌なところだよなぁ。
書いた人は当たり前なんだけど、第三者はきつい。

2012/06/16

perlからGMail

Net::Smtp::TLSでgmailのsmtpを叩いていたプログラムが

invalid SSL_version specified at /opt/local/lib/perl5/site_perl/5.12.4/IO/Socket/SSL.pm line 308.

とか言って、エラーを吐く。
 色々調べたけど解決策がわかんないので、Net::SMTP::SSLを使って書きなおした。


  my $smtp = Net::SMTP::SSL->new($mailhost,Port => 465);
  if ($smtp->auth($mail_username,$mail_password, required=>1)) {
    $smtp->mail($from);
    $smtp->to($to);
    $smtp->data();
    my $oMime = MIME::Entity->build(
      From     => $from,
      To       => $to,
      Subject  => $subject,
      Type     => 'text/plain',
      Charset  => 'UTF-8',
      Data     => $body);
    $smtp->datasend($oMime->stringify);
    $smtp->dataend();
    $smtp->quit;
  }else{
    print "failed to send mail\n";
  }

これで一応送信できるようになった。
typeとcharsetを指定しないと文字化けするので、utf8じゃない人は適当に変えてください。

あと、
use Net::SMTP::SSL;
use MIME::Entity;
をお忘れなく。

2012/06/02

emacsのevernote-modeが使えない

SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A

とか言い出して、 evernote-modeが使えなくなった。
認証方式が変わったのかな。

対応されるまでしばらく待つとして、関連ファイルを消すには以下。

sudo rm /opt/local/bin/enclient.rb
cd /opt/local/lib/ruby/site_ruby/1.8/
sudo rm LICENSE.txt thrift.rb
sudo rm -rf Evernote/
sudo rm -rf thrift/

これでアンインストールできたはず。
早く対応してほしー。

2012/04/11

Net::Twitterのresponse

$response=$twit->user_timeline();
とかした場合の
$response->{'HOGE'}
で指定可能なハッシュキーは以下
  • contributors
  • coordinates
  • created_at
  • favorited
  • geo
  • id
  • id_str
  • in_reply_to_screen_name
  • in_reply_to_status_id
  • in_reply_to_status_id_str
  • in_reply_to_user_id
  • in_reply_to_user_id_str
  • place
  • retweet_count
  • retweeted
  • truncated


追記
こういうのは,
print Dump $response;
として調べている.

2012/04/02

google web履歴をぶっこ抜く

googleのweb履歴をダウンロードするperl スクリプトを発見した.
https://gist.github.com/2283935/a9bde2f42942178c735988e5da0c249f5548cbd0


でもパスワード直書きは怖いので,標準入力にしたバージョンを書いてみた
https://gist.github.com/2283935