Hatena::ブログ(Diary)

Imamuraの日記

2016-05-04(水)

3Dプリンタに冷却ファンを追加する

| 3Dプリンタに冷却ファンを追加するを含むブックマーク 3Dプリンタに冷却ファンを追加するのブックマークコメント

f:id:Imamura:20160323160338j:image

自作したデルタ型の3Dプリンタ「K800」にワーク冷却用のファンを追加した。写真に向かって左側がホットエンドの冷却ファン。右側が今回増設した、造形物を冷却するシロッコファンである。特にPLA樹脂を出力するときは風を当てて、出力物をすぐ冷やしてあげるとダレにくくなってよい。

もとにしたデータはこちら。

SketchUp用のデータも公開されていたのでSketchUpで読み込んでK800向けに編集していったが、細かい調整の段階に入ると面の穴をふさげないところがあちこち出てきた。使い慣れないソフトだと、こういうときどうしたらいいのかわからない。結局ふだん使っているDesignspark MechanicalにSTLデータを読み込んだ。読み込んだSTLはそのままでは編集できない。STLデータをなぞるようにモデリングし直しつつK800用にアレンジした。

こんな感じになった
f:id:Imamura:20160617215611p:image

ワーク冷却用のシロッコファンはAmazonで買える「アイネックスRSF-04」を使う。

f:id:Imamura:20151212001936j:image

アイネックス スロット取付型PCシステムクーラー RSF-04

アイネックス スロット取付型PCシステムクーラー RSF-04

K800のキットについてきた25ミリ径のホットエンド冷却用ファンはうるさいので、40ミリ径の静音タイプに交換した。25ミリのファンはアキバでもあまり売っていないが、40ミリなら自作系の店で選び放題である。

f:id:Imamura:20151212002001j:image

作ったデータを3Dプリンタで出力し、ファンを組み込んでこうなった。

f:id:Imamura:20160604233457j:image

ファームウェアを書き換えて、新しい冷却ファンは無事ヒューンと回るようになった。

PLA樹脂の出力では特に問題はなかったが、ABS樹脂を出力するときは風量を100%にしたらノズルが冷えすぎて詰まってしまった。ABSはあまり急に冷やすと収縮が大きかったりもするから冷やすのはほどほどに。

ここで出力結果の比較写真を載せて「どうですきれいに出てるでしょう」とやりたいところだが、すいませんいいのがなくてそこは省略です。

完成したデータはThingiverseにアップロードした。

(6月17日記)

トラックバック - http://d.hatena.ne.jp/Imamura/20160504

2016-05-03(火)

台湾にはDIY文化がないという話

| 台湾にはDIY文化がないという話を含むブックマーク 台湾にはDIY文化がないという話のブックマークコメント

f:id:Imamura:20160503141413j:image

高須正和さん(@)の本『メイカーズのエコシステム 新しいモノづくりがとまらない。』のイベントが3331アーツ千代田で開催されて行ってきた。

この中で、登壇者の一人「DJきなこもちアイス」さん(@)が台湾DIY事情について話していてこれがなかなか面白かった。

  • 台湾にはDIYの文化がない
  • 幼稚園などに持っていく巾着袋はお母さんが作るものではなく、お店で買うもの
  • そもそもホームセンターがない
  • 東急ハンズはあるが単なる輸入雑貨屋
  • 「自分で作る」というと「IKEAみたいなの?」と言われる(今村註:IKEAの家具は自分で組み立てるので「半DIY」ともいえる。自由度が低い代わりに組み立てやすく、完成品を買うよりは安い。IKEAの独特さについては「IKEAのテレビ台に穴を開ける」(id:Imamura:20140915:IKEAで書いた)
  • 電話やドアノブのカバーを編み物で作るような、お母さん手芸の文化もない
  • 子供向け雑誌の付録で自分で組み立てるようなものもない

ホームセンターがないというのはかなり衝撃で、自分の手を動かしてどうにかする感覚は人間誰もが持っているものではないのだなとわかった。

台湾は3Dプリンタを自作する人が多く、台北RepRap(という自作3Dプリンタ規格)のコミュニティはとても活発だと聞いたことがある。

D-FORCEという3Dプリンタキットの会社は台湾にある。

台北にはラジオ会館的な電気街もちゃんとある。

そもそも台湾はパソコン関連パーツの製造が盛んである。そのわりにDIY文化がないというのは面白い。3Dプリンタやパソコンを自作するのは相当すごい人たちだけで、普通の人が棚を作るようなライトなDIYの部分がすっぽり抜けているということだろうか。

台湾にDIY文化を輸入できたらビジネスチャンスかもしれませんぞ。

台湾は「河レイヴ」も面白い

台湾に若者のクラブ文化が育っていない理由として、少人数のクラブイベントを開催できる小さい会場がなくオーガナイザーもいないという事情が紹介された。それとは別に、年配者は毎晩川原に音響機材を持ち込んで勝手に歌ったり踊ったりしている。DJきなこもちアイスさんはこれを「河レイヴ」と名付けたそうだ。

台湾はなんでもおいしい

何度も書いているが台湾と香港は似ているようでいて食べ物のおいしさのあり方が全然違う。香港は「味の資本主義」で、お金を出せばそれだけおいしいものが食べられる。安いところは安いなりのものしか食べられない。ところが台湾はなんでもおいしくて、そのへんの屋台で買う弁当までおいしい。台湾吉野家の牛丼もおいしかった。といっても牛丼は日本とまったく同じ味で、あれで台湾でやっていけるのかと思うかもしれないがつけ合わせがキムチでこれがおいしいのだった。台湾は機会があればまた行きたい。

帰りに撮った写真

f:id:Imamura:20160503231456j:image

追記:台湾のコスプレ事情との関連

これは当日聞いてここに書き忘れた話。布を買う店がないとしたら、ネット通販で買ったりしてるんでしょうかねえ?

(6月24日記)

トラックバック - http://d.hatena.ne.jp/Imamura/20160503

2016-04-22(金)

Re:VIEWで電子書籍とInDesign向けXMLを作るぞ

| Re:VIEWで電子書籍とInDesign向けXMLを作るぞを含むブックマーク Re:VIEWで電子書籍とInDesign向けXMLを作るぞのブックマークコメント

Wordで書かれた原稿をInDesignでDTPして、同時にリフロー型の電子書籍にもしたいという案件が来た。

Re:VIEW」というテキスト変換ツールがある。決められた記法で書かれたテキストファイルをEPUB形式の電子書籍MarkdownHTMLInDesign向けXML(IDGXML)などに変換してくれる。TeXインストールすればPDFでの出力も可能。@さんなどが開発している。

この種のテキスト変換ツールでは「Pandoc」というのもある。Pandocの記法はMarkdownを拡張したもの。

今回PandocではなくRe:VIEWを採用したのは、「リード文」(章や節の冒頭に載る、ここからの内容の概略)を指定する記法があったりして書籍の執筆向けであるとか、IDGXMLのInDesignへの取り込みで(ツールをひとつ通すと)いい感じにいけるとわかったから。

WindowsMacにRe:VIEW環境をインストール

Re:VIEWはRubyで動作する。WindowsでRe:VIEWを使うにはまずRubyをインストールする。「RubyInstaller」からインストールするのが簡単だ。

Rubyをインストールしたのち、「コマンドプロンプト」から「gem install review」でRe:VIEWがインストールされる。Rubyのインストール前にコマンドプロンプトを開いていた場合、環境変数PATH)の変化を反映させるためにコマンドプロンプトを再起動する。

検索してみると「WindowsでRe:VIEWを使うにはCygwinを」という解説がたくさん見つかるが、今のRe:VIEWはWindowsのコマンドプロンプトで使うことができる。

MacにはRubyがプリインストールされている。「ターミナル」から「sudo」(管理者として実行)を加えて「sudo gem install review」とする。

gemとgemsのアップデート
gemコマンドのアップデートは「gem update --system」、インストールされたgemsのアップデートは「gem update」。Re:VIEWだけアップデートしたいときは「gem update review」。Macではそれぞれ先頭に「sudo 」をつける。

.reファイルの執筆環境

上の記事で、テキストエディタ「Atom」でRe:VIEW向け設定を使う方法が解説されている。シンタックスハイライトだけでなくリアルタイムプレビューもできるそうでこれはいいですね。

(Windows版で試してみたら、自分のところではプレビューはエラーが出てうまくいかなかった。「language-review」パッケージについて「Uncaught TypeError: Cannot read property 'getParent' of null」とのこと)

Re:VIEWを使ってみる

「review-init ドキュメント名」と実行すると、標準的な設定ファイルやフォルダを作ってくれる。

「.re」ファイルからHTMLを作るには、たとえば「sample.re」からなら「review-compile --target html sample.re > sample.html」。

(設定ファイルを置かない場合、CSSはreファイルと同じディレクトリにある「stylesheet.css」を参照する。stylesheet.cssの例は https://github.com/kmuto/review/blob/master/test/sample-book/src/style.css などに)

InDesign向けXMLにするには「review-compile --target idgxml sample.re > sample.xml」。これは後述する方法でもう一度変換してからInDesignで読み込むとよい。

EPUBを作るには「sample.yml」などyml形式のテキストファイルに設定を書いて「review-epubmaker sample.yml」。

Re:VIEWの解説書

Re:VIEWについてひと通り解説した同人誌無償で提供されている。

EPUBやPDFに出力するためのファイル一式が提供されているので、Re:VIEWを使って自分で変換するとよい。ただしPDFでの出力はTeXのインストールが必要でちと大変。

EPUBの閲覧は「Calibre」で

EPUBの閲覧にいいのは電子書籍管理ソフトの「Calibre」で、Windows/Mac/Linux用が提供されている。

IDGXMLをInDesignに読み込むための変換スクリプト

Re:VIEWで出力したIDGXMLはそのままだとInDesignではちょっと使いづらい。変換するスクリプトがあった。

これは「xsltproc」を使うということでMacにインストールしようとしたが、そのために必要な「libxml」をMacへインストールできなかった。

libxmlのソースは↓にある。ここから自分でコンパイルすればいいかもしれない。

Windowsではxsltprocをインストールできた。しかしこれがなかなか大変だった。xsltprocのインストール方法は↓で解説されている。

ここで説明されているのは「libxslt」のインストールだがこのページで正しい。このページの「Prev」にはこう書いてある。

1.2. xsltprocとは

xsltprocとはlibxsltを使用したツールで、XMLファイルに対してXSLを適用させるためのコマンドラインツールです。

libxsltに付属しています。

1. はじめに

さて、xsltproc(libxslt)をインストールするにはあらかじめインストールしておくべきソフトがいろいろある。ここがけっこう大変なのだった。

  1. gettextをインストール(解説:http://saj.co.jp/techinfo/htmls/other-gettext-install_windows_precompile.html
  2. libiconvとzlibをインストール(解説:http://saj.co.jp/techinfo/htmls/xml-libxml2-install_windows_precompile.html
  3. libxml2をインストール(解説:http://saj.co.jp/techinfo/htmls/xml-libxml2-install_windows_precompile.html

この順序でインストールしていって、やっとxsltproc(libxslt)をインストールできる。お疲れさまでした。

ユーザー環境変数の追加について

xsltprocのインストールに際しては、実行ファイルを置いた場所を環境変数「PATH」に指定してあげる必要がある。

システムプロパティ」([Win]+[Break]→「システムの詳細設定」)→「詳細設定」タブの[環境変数]ボタンをクリック→[PATH]をクリックして[編集]ボタンをクリック、「変数値」の末尾にxsltprocのインストールディレクトリ(「;C:\bin\usr\bin」など)を記入する。

IDGXMLをInDesignへ読み込む手順

まず「review-compile --target idgxml 変換元.re > 変換元.xml」などで.reファイルをIDGXMLに変換する。次に「名もないテクノ手に」にあるスタイルシートをたとえば「4review.xsl」などで保存して、「xsltproc 4review.xsl 変換元.xml > 変換先.xml」などとすればInDesign向けに読み込みやすいXMLファイルになる。

XMLファイルをInDesignに読み込む方法の解説は以下。

この記事の「XMLの読み込み」に、InDesign用XMLを流し込む方法が解説されている。InDesign側であらかじめ段落スタイルや文字スタイルを作っておき、XMLのどのタグをどのスタイルに割り当てるかを指定していく。

ここでしっかりやっておけば、InDesignに流し込んでからの作業が格段に楽になる。

技術書典」にRe:VIEWとInDesignを使った組版の解説本が出る

6月25日アキバで開催される技術書オンリーの同人誌即売会「技術書典」で、@さん自ら執筆の『Re:VIEW+InDesign制作技法』なる本が販売されるとのこと。買います!

Wordファイルからテキストをちゃんと取り出すソフト「xdoc2txt」

ところで今回の仕事では元原稿がWord形式で提供されている。これをいったんテキスト形式に変換しなければならなかった。

Wordでdocxファイルなどを読み込み、「名前を付けて保存」でテキスト形式(txt)を選択しても、テキストボックス内の文字が出力されなかったりしてうまくない。

そんなあなたに「xdoc2txt」。WordやExcel、PDFなどのファイルから文字を取り出す。テキストボックス内の文字列もちゃんと取り出してくれてありがたい。

WZ Editor 5.x向けのRe:VIEW向け色分けスタイル設定

わかる人向けです。Re:VIEWのすべての記法を網羅しきれていない可能性があります。最新版のWZ Editorと互換性があるかは不明です。

reword(use=1;rgb="0x0000FF";atr=2;re=1): https?://[\w/\:;%\.,\$\&\!@\+\?=~\#-]+

reword(use=1;rgb="0x008040";atr=3;re=1): ^\s\*+\s|^\s\d+\.\s|^\s:\s

reword(use=0;rgb="0x0080FF";atr=0;re=1): \^¥?+\]+

words(use=1;rgb="0xC46B00";atr=0;flag=1): @<list @<img @<table @<fn @<kw @<chap @<title @<chapref @<bou @<ruby @<ami @<b @<i @<strong @<em @<tt @<tti @<ttb @<u @<br @<m @<icon @<uchar @<href @<raw @<bib @<comment @<hd @<column @<code @<balloon ===[column] ===[/column] //image //cmd //list //listnum //emlist //emlistnum //source //indepimage //graph //table //quote //footnote //bibpaper //lead //texequation //noindent //comment //raw //label //note //memo //tip //info //warning //important //caution //notice #@# #@warn( #@require #@provide #@mapfile( #@end #@maprange( #@mapoutput(

words(use=1;rgb="0x8000FF";atr=1): < > @< >{ } ( ) //

1つの.reファイルを分割するPerlスクリプト

Re:VIEWで1つの.reファイルを複数のHTMLに分割して出力する方法がわからない。どうもRe:VIEWは1つの.reファイルにはh1要素(「= 」で始まる行、章タイトルの扱いになる)が1つしかない前提で作られているようだ。しかし原稿全体を検索したいときや一括置換したいときなど、複数の.reファイルを横断的に検索するのはちょっと手間だし間違いも入りやすい。1つの.reファイルでh1が出てくるごとにHTMLファイルを分割して出力するようなしくみがほしい。

といっても今のところどうにもならないので、h1ごとに「.re」を生成するPerlスクリプトを書いた。

以下をサンプル「all.re」として保存する。

#@# ここから「preface.re」

* 本書中に登場する各種の会社名、製品名は一般に各社の登録商標です。

= はじめに

本書が読者の皆さんの役に立つことを願っています。

#@# この行から下が「chap1.re」

= あれについて

あれこれ

#@# この行から下が「chap2.re」

= これについて

これそれ

以下のPerlスクリプトを「all.re」と同じディレクトリに置いて実行する。自分用なのでファイル名、分割方式などはすべて決め打ちになっている。

上のページで紹介されていたスクリプトでは1行ごとにファイル出力していたが、それだとディスクへの書き込みがたくさん発生して処理がものすごく遅かった。分割するファイルの内容ごとに変数に入れていき、最後にまとめてファイル出力する処理にしたらすぐ終わるようになった。

#! /usr/local/bin/perl
use warnings;

my $chap=0;
my $infile="all.re"; #入力ファイルのファイル名
my $outfilename = "preface.re"; #最初の出力ファイル名だけ「preface.re」固定、2つめから"chap".n-1.".re"に
# $infileの冒頭(見出しなし)〜最初のh1〜次のh1の手前までを「preface.re」として出力、
# 2つめのh1から次のh1の前の行までを「chapN.re」として出力

open IN, $infile or die $!;

while (<IN>) {
	if (/^= .+/) {
		$chap++;
		$out[$chap] .= $_;
	}
	else {
		$out[$chap] .= $_;
	}
}
close IN;
my $i = -1;
foreach (@out){
	if ($i > 0){
		$outfilename = "chap".$i.".re";
		open (OUT , "> $outfilename");
		$outarray = $i + 1;
		print OUT $out[$outarray];
		}
	else {
		open (OUT , "> $outfilename");
		print OUT $out[0].$out[1];
		}
	$i++;
}
close(OUT);
exit;

これで「preface.re」「chap1.re」「chap2.re」が生成される。これに合わせた「config.yml」や「catalog.yml」をあらかじめ作っておけば、このPerlスクリプトの実行に続けて「review-epubmaker config.yml」をすればEPUBが作られるというわけ。そういうバッチファイルを書いた。

Re:VIEWへの要望見出し文字列を取得しつつ見出しへリンクしたい

Re:VIEWでは「@<href>{#見出しid,リンク文字列}」という書式で見出しへリンクできる。ただし「リンク文字列」の部分は自分で書かなければならないから、あとで見出しを書き換えたりしたら「リンク文字列」も忘れずに書き換えなければならない。

また「@<chapref>{章id}」という記法などもあり、これは「第x章「これについて」」 のような文字列に置換される。@<href>の中の「リンク文字列」の部分を、@<chapref>みたいに章idを指定して取得できたらいいなあ。実はできるのかな?

(こういう要望はGitHubにissueを立てればいいのかなー。でもGitHubは恐ろしくてできない)

追記:config.ymlでの指定でリンクになる由

「config.yml」に「chapterlink: true」と書いておくことで、@<chapref>や@<hd>で参照した文字列がその見出しへのリンクになるとのこと。確かにできました。@さんありがとうございます。

EPUBのお手軽作成は「でんでんコンバータ」で

EPUBへの変換という目的だけなら「でんでんコンバータ」が簡単だ。

Markdownをもとにした「でんでんマークダウン」でいろいろ指定する。

「でんでんコンバータ」は画像などの構成ファイルが50ファイルまでという制限があるため今回は採用しなかった。また、(EPUBの内部的に)章ごとに別のHTMLファイルに分かれてほしいときにどうしたらいいのかもわからず。

md2reviewでMarkdownをRe:VIEW形式に変換

MarkdownをRe:VIEW形式に変換するには「md2review」を使う。

「ターミナル」から「gem install md2review」でインストールされる。

Windowsでも同様に「install md2review」。

MacのRubyのバージョンが低いとき

こんな手順でmd2reviewをインストールできた。

  1. Homebrewをインストール(http://brew.sh/index_ja.html
  2. gitを2.3.5にバージョンアップhttps://sourceforge.net/projects/git-osx-installer/files/?source=navbar
  3. rbenvをインストール(brew install rbenv ruby-build)
  4. Ruby 2.3.0をインストール(rbenv install 2.3.0)
  5. md2reviewをインストール(gem install md2review)

Pandoc用Re:VIEWのWriter

ひょっとしてこれを使えば、Pandocが扱えるいろいろなファイルを直接Re:VIEW向けに変換できるのかもしれない。(未検証)

カスタムWriterを使用するには、単にLuaスクリプトへのパスを出力フォーマットとして指定するだけです。例えば:

pandoc -t data/sample.lua
Pandoc ユーザーズガイド 日本語版 - Japanese Pandoc User%27s Association

とのこと。

はてな記法Markdown記法相互変換

はてな記法を使ってマークアップした文書をRe:VIEWに使いたいことがあるかもしれない。またその逆もあるかもしれない。そういった場合、間にMarkdownを挟んで変換することになる。(以下はいずれも未検証)

はてな記法→Markdown(Hateda2md)
一生涯はてな記法しますか?それともMarkdownしますか?(http://melborne.github.io/2012/05/05/to-be-hatena-notation-or-to-be-markdown/
Markdown→はてな記法(hatena.lua)
PandocのカスタムWriterでMarkdownからはてな記法に変換 - Qiita(http://qiita.com/takada-at/items/4d94a8811b4aaa5d5fd3

Markdownになればmd2reviewでRe:VIEW形式に変換できる。Re:VIEWからMarkdownへの変換はRe:VIEW本体で可能である。

Pandoc向けのはてな記法Writerもあるもよう。

(6月9日記)

トラックバック - http://d.hatena.ne.jp/Imamura/20160422

2016-04-06(水)

この自転車の4年

| この自転車の4年を含むブックマーク この自転車の4年のブックマークコメント

f:id:Imamura:20160407002815p:image

自転車を買って4年たった。この1年は約150キロしか走っていない。最初の1年の1/5以下である。いけませんね。健康のために走るべきだとは思うものの、生活というか気持ちになかなか余裕がない。

「Maker Faire Tokyo 2013に行ってきた」(id:Imamura:20131104:mft2013)でも書いたように、自転車で移動するのは交通費はかからないし健康にもなるが実はぜいたくなことだ。

自転車は交通費ではお得だけどむしろ余裕がある人向けのぜいたくな乗り物だ。忙しければ電車で行く。電車なら行き帰りにほかのことができる。自転車をこいでいる間はとにかくこぐしかない。

Maker Faire Tokyo 2013に行ってきた - Imamuraの日記

もっと気軽に自転車に乗る生活にしていきたい。今日から1年間の移動距離をこれまでの1年間より増やすことを目標に…いやいや、目標にするのではなく「移動距離を去年より増やせたらいいな」くらいでいこう。

昔の今日の日記から

5月14日記)

トラックバック - http://d.hatena.ne.jp/Imamura/20160406

2016-03-15(火)

木工用ボンドをねじロック剤にしてみる

| 木工用ボンドをねじロック剤にしてみるを含むブックマーク 木工用ボンドをねじロック剤にしてみるのブックマークコメント

フライパンのふたに取っ手がついているのを使っていて、これは取っ手のねじがすぐにゆるんでくる。瞬間接着剤でつけてしまってもいい気がするが、いま想像できないような理由で取っ手を外したくなる日が来るかもしれないと思うと踏み切れない。

ねじがゆるんでこないようにする「ねじロック剤」というものがこの世にあることを知った。「ロックタイト」という商品が一般的なようだ。

同種の製品の安いものはモノタロウで買える。

安いほうをモノタロウで買ってきて使ってみた。しかしやっぱりゆるんでくる。ふたを洗うときに水がかかるのがよくないのだろうか。こういうねじロック剤は嫌気性で、空気に触れなくなると硬化する。目的のねじはすき間が大きすぎて硬まらないのかもしれない。

ちょっと考えて、木工用ボンドをねじ穴に流し込んでみた。ボンドが固まったらねじロック剤のようにねじを固定してくれたりしないだろうか。

しばらく使ってみて、おおむねいい感じ。でも2か月でちょっとゆるんできているのでもう一度木工用ボンドで固定してみたらいいかも。

(5月12日記)

トラックバック - http://d.hatena.ne.jp/Imamura/20160315