タグ

ブックマーク / zariganitosh.hatenablog.jp (16)

  • 途中経過を表示しながら解くpentominoコマンドに仕上げる - ザリガニが見ていた...。

    前回までにc言語なら0.9秒(さらなる高速化を追記した)でペントミノパズル(6×10)の全解を出力できるようになった。1秒切ったので、高速化についてはこれで満足。しかし、何かまだ満たされないものがある。 最速を狙ったコマンドは1度試せばそれで満たされてしまう。たぶん、もう二度と実行することはなくなる。そうではなく、何度も使いたくなるpentominoコマンドにしておきたい。 追加する機能 使って楽しいコマンドを目指して、以下の機能を追加するのだ。 味気ないローマ字表現はやめて、カラフルなブロックにしたい。 ブロックを置きながら試行錯誤する途中経過を見せたい。 コマンドらしく、オプション指定やboardサイズも指定できるようにしておく。 面倒な処理がありそうなので使い慣れているRubyで書いてみる。 現状のコード # coding: utf-8 BROW, BCOL = 10, 6 # すべ

    途中経過を表示しながら解くpentominoコマンドに仕上げる - ザリガニが見ていた...。
  • なるべく書かないawkの使い方 - ザリガニが見ていた...。

    awkという、古くからのスクリプト言語がある。(1977年生まれ。読み方は「オーク」である。エイ・ダブリュ・ケイではない)man awkをPDFに変換してみると、たったの3ページ強しかない。 $ man -t awk|pstopdf -i -o ~/Downloads/awk.pdf とてもシンプルな言語仕様ではあるが、awkには必要十分な表現力がある。特にテキストを処理する場面においては、最小限のシンプルな記述で、気の利いた処理を素早くこなす。無駄のないawkワンライナーを見ると、ある種の感動を覚える。awk以降に生まれたスクリプト言語は、少なからずawkの影響を受けていると思われる。 awkを知ることで、間違いなく幸福度は上がると思う。いつかきっと「知ってて良かった」と思える時が来るはず。もっともっと、awkを知りたくなってきた。 基動作 awkの基動作は、とってもシンプルである。

    なるべく書かないawkの使い方 - ザリガニが見ていた...。
    nobeans
    nobeans 2013/12/13
  • ワンライナーでそのまま使えるスクリーンショットが撮れる! - ザリガニが見ていた...。

    今やshadowコマンドには拡大・縮小機能まで付いたので、AutomatorやAppleScriptで面倒な計算をする必要はなくなった。 $ shadow -w900 test.png たったこれだけで、900px以内に縮小された必要最小の影付き画像が手に入る!(もちろん指定サイズ以内だったら、画像を無駄に拡大するなんてこともしない。上記の例なら500pxの画像はそのまま等倍で出力する。) ちなみに、縦横900px以内の影付き画像が欲しいとき、縮小計算をするのは意外と面倒だ。 単純に画像全体を900pxに縮小してから影を調整すると、影の部分が500pxをオーバーしてしまう可能性がある。 最初に影を調整して900pxに縮小してしまうと、画像と一緒に影の部分も縮小されてしまう。 掲載する写真の影と考えれば、あらかじめ影のマージンを考慮して影なし画像を縮小して、その後影を付けて900pxに収める

    ワンライナーでそのまま使えるスクリーンショットが撮れる! - ザリガニが見ていた...。
    nobeans
    nobeans 2012/11/27
  • オートセーブとバージョンのまとめ - ザリガニが見ていた...。

    前回は、試すばかりでまとまりがなかったので、現時点の自分の理解を整理してみた。 書類ウィンドウの二つの状態 書類は、「編集済み」と「確定」を繰り返しながら成長していく。 編集済み 「確定」の書類ウィンドウが、何らかの編集をされた状態。 同じ内容であっても、何らかの操作が加えられていれば「編集済み」になる。 例:1文字追加してすぐ削除しても、それは「編集済み」の状態である。 確定 「編集済み」の書類ウィンドウで以下の操作を実行すると「確定」する。 保存メニューを実行する。 ウィンドウを閉じる。 過去のバージョンに戻す。 (iCloudの書類が)別のユーザー環境から編集される。 名称未設定の場合 ちなみに、名称未設定であっても、上記と同様の仕組みである。 名称未設定=まだファイル名が設定されていない状態。 名称未設定の書類は、iCloudにオートセーブされる。(iCloudにサインインしている

    オートセーブとバージョンのまとめ - ザリガニが見ていた...。
    nobeans
    nobeans 2012/11/11
    なるほど、全然理解してなかった。ためになる。
  • テキストでないファイルのdiff(差分)をとる方法 - ザリガニが見ていた...。

    AppleScriptはスクリプト言語なんだけど、ファイルに保存するときはAppleScript形式にコンパイル(変換)される。その結果、AppleScriptエディタでは人間が理解できるコードに見えるのに、普通のテキストエディタで開くとこんな状態。 その実態は、AppleScript独自のバイナリファイルなのだ。バイナリファイルの痛いところは、diffを実行してもそのままでは差分がとれないこと。どうしても差分をとりたいと思うのなら、いったんAppleScriptファイルを開いて、テキストファイルとして保存したファイルに対してdiffを実行するしかない。 しかし、それでは手間がかかりすぎる。手軽にdiffできないと、いずれ使わなくなる。そんな訳で「AppleScriptはバイナリファイルなのだから、しょうがない」と以前から諦めていたところがあった。(Gitのあの素晴らしい仕組みを知るまでは

    テキストでないファイルのdiff(差分)をとる方法 - ザリガニが見ていた...。
    nobeans
    nobeans 2012/10/14
  • PDFの連続印刷 - ザリガニが見ていた...。

    リッチテキスト書類をPDFにして提出しなければならない。そんな時、OSXではめちゃくちゃ簡単である。command-Pでプリント...を選択して、「PDFとして保存...」すればいいのである。素晴らしい! ところが、リッチテキストのファイルがたくさんあると、どうだろう?10ファイルなら10回書類を開いて「PDFとして保存...」すればいい。まだ、頑張れる。 でも、100ファイルあったとしたら...そんなこと面倒くさくてやってられない、と思ってしまうのである。(自分の場合は)そこから、すべてが始まる。 デスクトッププリンタ そう言えば昔、デスクトッププリンタってあったよな、と思って調べてみると、OSXにもあった。 デスクトッププリンタとは、デスクトップにあるプリンタアイコンに書類をドラッグ&ドロップすると印刷されるヤツ。 システム環境設定 >> プリントとファクスで表示されるプリンタアイコン

    PDFの連続印刷 - ザリガニが見ていた...。
    nobeans
    nobeans 2012/07/12
  • メモリを解放してスワップ発生を抑える方法 - ザリガニが見ていた...。

    OSX 10.6 Snow Leopardは、極めて安定した、信頼性の高い、快適なOSとなった。但し、ハードディスクから起動する環境において、その快適さを保つためたった一つ気を付けておくべきことがある。それは、スワップ使用領域の増加を極力抑えること。 スワップへのアクセスが頻繁に発生している時は、あのレインボーカーソルがぐるぐる回っている時である。どうしようもない操作レスポンスの低下に悩まされる。そんな状態に極力陥らないように、使っていないメモリを素早く解放する方法を模索してみた。 その1 フォルダ容量を計算する フォルダ容量を計算する過程でメモリが解放されることがある。それを利用した方法は、3つある。どれも仕組みは同じなので、どれか一つの方法を実行するだけで十分。 Finderを利用する方法 Finderで起動ディスクのルートを開いて、リスト表示にする。(command-2) 表示オプシ

    メモリを解放してスワップ発生を抑える方法 - ザリガニが見ていた...。
    nobeans
    nobeans 2011/06/17
  • MacPortをx86_64環境にする - ザリガニが見ていた...。

    前回の続き 作業環境 MacBook OSX 10.6.4 bashを利用している。 ~/.bash_profileに以下のコマンドを追記している。 export PATH=/opt/local/bin:/opt/local/sbin:$PATH 実はXcodeもMacPortもOSX 10.5の頃からインストール済みだった。 だから、rtmpdumpとffmpegをインストールするにあたっては、以下のコマンド3行で完了するはずだった。 sudo port selfupdate sudo port install rtmpdump sudo port install ffmpeg エラー発生 しかし、ffmpegインストール中にエラーが発生。 ---> Computing dependencies for pkgconfig ---> Fetching pkgconfig ---> Ver

    MacPortをx86_64環境にする - ザリガニが見ていた...。
  • 自分仕様なMacBookの快適なところ - ザリガニが見ていた...。

    iPadは場所を選ばず手軽に使えて便利なのだが、結局のところ、MacBookの代わりにiPadで作業しようとする限り、MacBook以上に快適に作業できることはなくて、現状ではiPadでの作業はMacBookに比べて冗長になる。(もちろん、iPadでしかできない作業とか、iPadが得意な作業というのもあって、例えば、現在地を絶えず追跡しながらカーナビのように地図アプリでナビゲーションするとか、PDFをまるで紙ののように再現するとか。) たぶん、長年MacBook(のようなマウス&キーボードUIのパソコン)を使ってきて、その環境での作業が慣れているせいもあるかもしれない。それに、そもそもマウス&キーボードUIには25年以上の歴史があり、その中で常に進化し続けてきた。今のMacBookは、すべてがマウス&キーボードUIに最適化され、かなり成熟した作業環境になっているはずなのだ。さらには、自分

    自分仕様なMacBookの快適なところ - ザリガニが見ていた...。
    nobeans
    nobeans 2010/06/15
  • ターミナルから画面共有を有効にする - ザリガニが見ていた...。

    画面共有はとっても便利なんだが、たまに、接続したいマシンの「画面共有」のチェックを入れ忘れていたりして、がっくりする...。もし、sshで接続して、コマンドから画面共有の有効・無効を切り換えることができれば、その瞬間、幸せな人生を感じることが出来そう。...なんて考えていたら、そんな技が紹介されていた。早速、試してみる。 10.5: Start screen sharing remotely in Terminal - Mac OS X Hints 作業環境 MacBook OSX 10.6.3 コマンドで画面共有を入・切 拙い英語の理解力で読み取ると、その技は、以下のようなコマンドになる。(上段:有効にする/下段:無効にする) # OSX 10.5 sudo echo -n enabled > /Library/Preferences/com.apple.ScreenSharing.la

    ターミナルから画面共有を有効にする - ザリガニが見ていた...。
    nobeans
    nobeans 2010/05/19
  • コマンドから引き出すGUIの機能 - ザリガニが見ていた...。

    OSXが素晴らしいGUI環境を提供してくれるのだから、わざわざコマンド操作を覚えるまでもないと考えていた。ところが、OSXGUI環境を素早く・便利に使いこなすためには、キー操作を組み合わせたショートカットが必須*1である。そして、ショートカットとは何かを考えれば、キー入力以外の何者でもなく、突き詰めればコマンド入力と大差ないことに気付く。 Finderからcommand-Nで新規ウィンドウをを開くのも、ターミナルでlsと入力するのも、キー入力のタッチ数は同じである。 Quicksilverなんて、高度な入力補完機能付きのターミナルのようなものかもしれない。 つまり、GUIはコマンド入力と組み合わせることで、最大の効率化を図れるのである。 ところで、OSXGUI操作にはそれに対応するコマンドが用意されていることが多い。(どちかというと、コマンドが先でそれにGUIを着せた結果なのかもしれな

    コマンドから引き出すGUIの機能 - ザリガニが見ていた...。
    nobeans
    nobeans 2010/01/26
    これは面白い
  • MacBookで快適なリモート操作を目指す - ザリガニが見ていた...。

    Snow Leopardになり、サポート対象はIntel CPUのマシンだけとなってしまった...。でも、年に1度だけ、未だにOS9とOSX10.4のアプリケーションが大活躍する。そう、年賀状の作成である。具体的には、宛名書きの「宛名職人」と文字や画像にエフェクトをかけて自由に配置できる「Photoshop」だ。どちらもバージョンアップすれば、最新のOSX10.6 Snow Leopard環境でも問題なく動作するはず。しかし、年賀状を作成するという目的においては、その当時の機能で十分なので、そのまま使い続けてきた。バージョンアップの料金も馬鹿にならない。 年賀状作成の時だけ、PowerBookの前に移動して作業すれば良いことなのだが、普段からMacBookを常用していると、最近はそれさえも面倒になる。できることなら、MacBookからそのままPowerBookも操作したい欲求に駆られる。

    MacBookで快適なリモート操作を目指す - ザリガニが見ていた...。
    nobeans
    nobeans 2010/01/06
  • 徹底的に辞書で調べる - ザリガニが見ていた...。

    OSX 10.5(Leopard)からOS標準で辞書が利用できるようになった。アプリケーションフォルダを確認すれば、辞書.appが存在しているはず。辞書で調べたい時は、最も基に忠実な方法としては、この辞書.appを起動すれば、検索できるのだ。 ところで、辞書で調べるという行為は多くの場合メインの目的ではなく、別のアプリケーションの作業中に発生する付随的な行為となる場合が多い。Appleもそのことは良く分かっていて、だから辞書で調べる手段が、辞書.appを起動する以外に3つ用意されている。 辞書で調べる3つの方法 サービスメニューの辞書で調べる 調べたいテキストを選択した状態で... メニューバーのアプリケーションメニュー*1 >> サービス >> 辞書で調べる すると、選択したテキストが検索された状態で、辞書.appが起動する。(辞書.appの環境設定とは関係なく常に) ショートカットを

    徹底的に辞書で調べる - ザリガニが見ていた...。
    nobeans
    nobeans 2009/12/23
  • Snow Leopardになって覚えた、ちょっとした便利な操作 - ザリガニが見ていた...。

    Snow Leopardを使い始めて2ヶ月が経過した。いろいろ気にしながら操作していると(OSX 10.5からの機能の含めて)今更ながら発見が多い。一つ一つはちょっとした便利さなのだけど、それがたくさん集まると、とっても便利になるはず。そう思って、メモしていたことを書き出してみた。 辞書 command-control-Dで、そのままcommand-controlを押し続けると...(Dは放す) マウスの移動に合わせて、ポップアップ辞書の表示も更新される!(OSX 10.5、OSX 10.6) ポップアップ辞書がうまく表示されない場合の参考に、コメントと徹底的に辞書で調べるもどうぞ。 クリッピングファイル クリッピングファイルが、選択可能なテキストになった。(OSX 10.5までは、選択できないテキストだった。) メニューバーのサウンドアイコン(音量調整) shift-クリックで、警告音の

    Snow Leopardになって覚えた、ちょっとした便利な操作 - ザリガニが見ていた...。
    nobeans
    nobeans 2009/10/31
  • 16名のmacユーザーで利用されているソフトウェアの傾向とか分析とか - ザリガニが見ていた...。

    macに限定して考えただけでも、相当な数のソフトウェアが存在する。その中で、実際に自分が試すことができるのは、ほんの一部だ。そうすると、自分が知らない素晴らしいソフトウェアが、未だたくさんあることになる。もったいない話だ...。 僕のMacができるまで | Macの手書き説明書さんのmacの利用環境が公開されてから、16名の方がmacの利用環境、つまり、どのようなソフトウェアをインストールして、とのように利用しているかを公開してくれている。ありがたいことです。*1 これにはきっと素晴らしい情報が含まれているはず。しかし、リンクを辿って眺めているだけでは気付かないことも多いだろうと...。秋の夜長に覚悟を決めてやってみた。ひたすら、地道に、コピー&ペーストあるのみ! 作業前の言い訳 僕のMacができるまで | Macの手書き説明書さんで紹介されているリンク先のmac利用環境で紹介されているソ

    16名のmacユーザーで利用されているソフトウェアの傾向とか分析とか - ザリガニが見ていた...。
    nobeans
    nobeans 2008/11/06
  • 新規購入したMacBookにインストールしたApple以外のソフトウェア - ザリガニが見ていた...。

    僕のMacができるまで | Macの手書き説明書さんの記事に触発されて、いつか自分でも似たようなことを書き留めておきたいと思っていた。MacBookを新規購入したので、今こそ、そのチャンス!(こういうことって、当り前の環境として使ってしまっていると、何をインストールしていたか忘れてしまう。新規インストールする時に改めてその便利さを再確認することが多い。) インストール前のいい訳 PathFinderというOSの操作感をそっくり代替してしまうような素晴らしいソフトウェアもあるが、日常的にはOSXのFinderを利用している。*1 メールとWEBブラウザについても、(機能拡張するソフトウェアはインストールしているが)OSX標準のMailとSafariをメインに利用するようにしている。そうすると、MobileMe(.mac)を利用してメール設定やブックマークをあっという間に同期できる便利さに惹か

    新規購入したMacBookにインストールしたApple以外のソフトウェア - ザリガニが見ていた...。
    nobeans
    nobeans 2008/11/02
  • 1