PukiwikiからDokuwikiに文法を変換奴(※ただしテキトー)

ここ数年ぐらいお仕事のログをwikiに書いて備忘録として使っているのだけれども、長年使ってたpukiwikiからdokuwikiに移行することにした。DBレスで運用が楽なのはどっちも一緒だけど、しばらくdokuwikiを使ってみると使い勝手が結構良かったのだ。なんというかこう、数年に一度は立ち止まって周りを見渡すと、より良いツールが巷に広まってるもんだね。

そいで移行するにあたって面倒なのが、wikiシステムによって記法が違うということ。まあ、こいつは方言みたいなもんだからしゃーないのだけれど、とりまpukiからdokuに変換する便利な車輪ないかなーと思って探してみたら、どーやらPerlで作られたスクリプトは転がってる模様。うーん、しかしこれだけのためにPerl入れるのいやだしなぁ。しかも、業務用とはいえ俺が個人的に使ってるやつだし、そんなに膨大なページ数があるわけでもないので、ガチ変換じゃなくてテキトーでええんだわ。

てなわけで、HTML+Javascript(jQuery)で動く文法変換くんを白目剥きながら書いてみましたよ。
続きを読む PukiwikiからDokuwikiに文法を変換奴(※ただしテキトー)

Node.jsでシリアル通信(Windows環境)

シリアル通信(UART)でPCと組み込み機器のデータ入出力をやる機会がたまーにある。Vectorとかでシリアル通信のGUIツールを落としてきて確認するのが手っ取り早いのはあるんだけれども、もっとシンプルでいい。なんならCUIでいい。

言語だとか環境はなんでもよかったのだが、そろそろnode.js大好きおじさんになりたいと思ってるので、そいつ向けのプラグイン的なやつでやってみることにした。すると、「serialport」とかいう読んで字の如くなやつがあるそうだ。

しかし俺がやろうとしてる事がニッチすぎるせいか、日本語かつWindows環境の情報が少ないやね。まー、世の中のギークボーイ達はみんなLinux使ってるからしゃーない(勝手な偏見)。そんなときはとりあえず「Google翻訳を使いながら公式のドキュメントをさらえ」ってばっちゃが言ってた。
続きを読む Node.jsでシリアル通信(Windows環境)

VSCodeでSassを導入した話


「スタイルシートいうたらお前、テキストエディタでゴリゴリ書き殴るのが大正義なんじゃい!」と思ってた時期が僕にもありました。というか、SassとかLessとかの存在すら知らなかっただけなんだけれどね。会社でWEBやってるパイセンに教えてもらって、ようやく俺も文明開化しやした。先人の知恵しゅごい。

SassだとかLessだとかは「スタイルシートをより簡潔に書けるよー」的なしくみの事なのだ。どっちが良いのかは好みによるとは思うのだが、「パイセンが使ってたから」という安直な理由でSassを使ってみる事にした。使い始めてから2~3ヶ月ぐらい経つのだが、個人的には全体的な記述量が減ってくれて、メンテしやすくなるのが一番ありがたい。まあ、ブラウザから直接Sass読めるわけじゃないので、コンパイルしてcssに吐き出さなあかんというのはちょっと面倒ではあるものの、それを上回るメリットは充分あると感じた。

まあ、Sassの書き方だとかそこらへんは他所様のサイトを見た方が参考になると思うので、ここでは割愛する。ここでは俺が日頃から使ってるエディタであるVisual Studio Codeでのコンパイル環境を導入した(というか試行錯誤した)手順について遺しておこう。
続きを読む VSCodeでSassを導入した話

PythonでPDFを分割・結合しようとしたけど諦めた

なんか今まで分割や結合の用途で使ってたPDF編集ツールが会社のセキュリティの関係で使えなくなってしまったので、カッとなってPythonでやった。今は反省している。

結論から言えば、1時間ぐらいかけて頑張ってみたけども、うまくいかなかった。それだけで終わらせてしまうのはなんかアレなので、試した事ぐらいは遺しておこう。
続きを読む PythonでPDFを分割・結合しようとしたけど諦めた

【VSCode】いまさらEmmetの存在を知ったので使ってみた

俺は決してWEB屋とかではないのだが、HTMLだとかCSSは何かと便利なので、ちょいちょい使ってなんか作ってる。で、ちょっとした物を作る度に「HTML5ベースで作んないとアレだから、ネットからテンプレをコピペしてこないとだなー」とかいうことを泥臭くやってたのだが、ある日、Visual Studio Codeでシコシコとタグ打ち込んでるときに、妙なインテリセンスが目に入った。

「html:5」ってなんやねん。と思いながら、おもむろに選んでみると・・・

ファッ!? なんかテンプレ展開されるやんけ!なにこの便利機能!Emmet、お前だったのか。いつもTabで補完してくれていたのは。

こいつについて調べてみたところ、EmmetはHTMLやCSS、XMLとかで使える、テキストエディタ向けの入力補完マンらしい。ほむほむ、さっそく試してみようジャマイカ。
続きを読む 【VSCode】いまさらEmmetの存在を知ったので使ってみた

【VSCode】デバッグ用の引数を設定する

なんかたまに忘れるので俺用にメモ。pythonのコーディングにVSCodeを使い始めたのは良いのだが、デバッグするときに、どーやって引数的なやつ渡せばいいんだぜ?となる事が多いので。本家VisualStudioだったら、デバッグのプロパティからラクラク設定できんだけどねー。

といったところで調べてみたところ、公式のドキュメントに書いてあるとおり、.vscode フォルダの下にある launch.json ファイルを開いて、「args」という属性を追加してやればOK。

"version": "0.2.0",
"configurations": [
    {
        "name": "Python",
        "type": "python",
        "request": "launch",
        "stopOnEntry": true,
        "program": "${file}",
        "debugOptions": [
            "WaitOnAbnormalExit",
            "WaitOnNormalExit",
            "RedirectOutput"
        ],
        "args":["arg1", "arg2"]
    },

Pythonの開発環境入れてたら「configurations」にPythonっぽい場所があるので、「args」に引数をぶちこんでおく。今回は、引数1に「arg1」、引数2に「arg2」という文字列を渡している。

# coding: UTF-8 
import sys

param = sys.argv

print(param[1])
print(param[2])

こんな感じでコードを実行してみると、コンソールには「arg1」「arg2」が出力される。以上!

【Python】Pillowで画像にテキストを描き込む

Jenkinsさんで定期的にキャプチャして配布してる画像に、文字列で日付やらのデータを描き込む必要がでてきた。なんか楽にやれる方法ねえかなーっ、て所で調べてみたら、Pythonとかで画像処理ができるライブラリが色々とあるらしい。OpenCVが有名だし楽しそうではあったんだけど、導入手順がめんどそうだったので今回はPillowってのでお手軽にやってみる事にした。

もともとはPIL(Python Image Library)っていう画像操作のライブラリが、更新停止に伴って後継になって生まれたのがこやつらしい。はえー。どーでもいいけど、Pillowって日本語で「枕」なのね。
続きを読む 【Python】Pillowで画像にテキストを描き込む