Skip to content

Instantly share code, notes, and snippets.

@lieutar
lieutar / pdftest.psgi
Created August 31, 2011 03:36
PDF::API2 でJavaScript を埋め込むためのもの
package PDF::API2::JavaScriptSupport;
use strict;
use warnings;
use PDF::API2::Basic::PDF::Utils;
sub new{
my ($pkg, $pdf) = @_;
bless{pdf => $pdf->{pdf}},( ref($pkg) || $pkg );
}
@lieutar
lieutar / *scratch*
Created October 14, 2011 06:29
elisp で YAML を読むために
(defun yaml2json (yaml)
"Converts a YAML string to a JSON string.
This function is not 100% pure elisp.
This function depends to perl , YAML::Syck and JSON::Syck."
(with-temp-buffer
(let ((proc (start-process
" *yaml2json*"
(current-buffer)
"perl"
"-MYAML::Syck"
@lieutar
lieutar / punzip.pl
Created January 7, 2012 01:35
日本語ファイル名を含むzipの解凍
#! /usr/bin/perl
use 5.01;
use strict;
use warnings;
no warnings 'utf8';
use utf8;
use Encode;
use Encode::Guess qw(shift-jis euc-jp 7bit-jis utf8);
use Path::Class;
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
// ==UserScript==
// @name はてブエントリページ拡張
// @namespace tag:lieutar@gmail.com,2016
// @include http://b.hatena.ne.jp/entry/*
// @version 1.0
// ==/UserScript==
(function(){var $$pm=function $$pm(src){return{$meta:src,getMeta:function getMeta(){return src},isProvided:function isProvided(){return true},isReserved:function isReserved(){return false},isDeprecated:function isDeprecated(){return false},getDeprecatedReason:function getDeprecatedReason(){return null},getDepends:function getDepends(){return[]},getName:function getName(){return src.NAME},getVersion:function getVersion(){return src.VERSION},getBase:function getBase(){return $mod.baseOf(src.NAME)},getHome:function getHome(){var base=this.getBase();var match=String(base).match(/(.*)\/lib\/?$/);return match?match[1]:base},reserve:function reserve(){},getEntity:function getEntity(){},provide:function provide(){},getAuthor:function getAuthor(){return src.AUTHOR},getX:function getX(){return src.X||{}},getSrc:function getSrc(){return src.SRC},g