Hatena::Groupcadr

わだばLisperになる このページをアンテナに追加 RSSフィード

2004 | 12 |
2005 | 01 | 02 | 07 | 10 | 11 |
2006 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 11 |

2008-01-13

ttf-ascii

| 17:45 | ttf-ascii - わだばLisperになる を含むブックマーク はてなブックマーク - ttf-ascii - わだばLisperになる

TTFファイルから、アスキーアートのバナーを作るらしいパッケージ。とりあえず、試しでインストール。

パッケージ名ttf-ascii
本拠地サイトhttp://www.yagc.ndo.co.uk/code/ttf-ascii/
ClikiCLiki: ttf-ascii
ASDF-INSTALL×
インストール方法ASDFには対応している。

インストール

このパッケージは、ASDFには対応しているのですが、bzip2で圧縮されているため、asdf-installできず。最近のASDF-INSTALLだとbz2も扱えるのでしょうか…。

面倒なので、asdf-installをbz2も扱えるように変更してみました。CL-PPCREとか、KMRCL依存というのに問題ありな気が激しくしますが、面倒だったので…。(find-packageで判定してオリジナルと動作を切り分ければ、幾分ましかもしれません)

;; 判定する関数をでっちあげ
(defun get-archive-type (name)
  (let ((file-type (kmrcl:command-output "~A ~A" "file" (namestring name))))
    (cond ((ppcre:scan "bzip2" file-type) :bz2)
	  ((ppcre:scan "gzip" file-type) :gz)
	  ('T :unknown))))

(defun get-tar-directory (packagename)
  (let* ((tar (with-output-to-string (o)
                (or
                 (sb-ext:run-program *tar-program*
                                     (list (case (get-archive-type packagename)
					     (:gz "-tzf")
					     (:bz2 "-tjf")
					     (otherwise (error "unknown archive type")))
					   (namestring packagename))
                                     :output o
                                     :search t
                                     :wait t)
                 (error "can't list archive"))))
         (first-line (subseq tar 0 (position #\newline tar))))
    (if (find #\/ first-line)
        (subseq first-line 0 (position #\/ first-line))
        first-line)))

(defun untar-package (source packagename)
  (with-output-to-string (o)
    (or
     (sb-ext:run-program *tar-program*
			 (list "-C" (namestring source)
			       (case (get-archive-type packagename)
				 (:gz "-xzvf")
				 (:bz2 "-xjvf")
				 (otherwise (error "unknown archive type")))
			       (namestring packagename))
			 :output o
			 :search t
			 :wait t)
     (error "can't untar"))))

それで、このパッケージは、ZPB-TTFパッケージに依存しているので、(asdf-install:install :zpb-ttf)でインストールします。

試してみる。

ドキュメントはないですが、ソース本体であるfont.lispの最後にテストが書いてあるので、それを真似て試してみます。

ちなみに、シンボルはエクスポートされていない様子です。

日本語フォントは無理かなーと思って試してみたのですが、ちゃんと表示されました。

(let ((font-loader
       (zpb-ttf:open-font-loader "/usr/share/fonts/truetype/kochi/kochi-gothic-subst.ttf")))
  (ttf-ascii::print-message (ttf-ascii::make-message font-loader "漢" 64 64))
  (zpb-ttf:close-font-loader font-loader))
;=>
################################################################
##########+#####################################################
#########++##################++############++###################
########++++#################+++++#########+++++################
#######+++++#################++++++########++++++###############
#######++++++################+++++#########++++++###############
########+++++################+++++#########+++++################
########++++++##+++++++++++++++++++++++++++++++++++++++++++++###
#########+++++##+++++++++++++++++++++++++++++++++++++++++++++###
#########++++++#+++++++++++++++++++++++++++++++++++++++++++++###
##########+++++++++++++++++++++++++++++++++++++++++++++++++++###
###########++++#+++++++++++++++++++++++++++++++++++++++++++++###
###########++################+++++++++++++++++++################
#############################+++++++++++++++++++################
#############################+++++++++++++++++++################
########################+++++++++++++++++++++++++++++###########
########################+++++++++++++++++++++++++++++###########
######+#################+++++++++++++++++++++++++++++###########
####+++#################+++++++++++++++++++++++++++++###########
###+++++################++++#########+++#########++++###########
###++++++###############++++#########+++#########++++###########
####+++++###############++++#########+++#########++++###########
####++++++##############++++#########+++#########++++###########
#####+++++##############++++#########+++#########++++###########
#####++++++#############++++#########+++#########++++###########
######+++++#############++++#########+++#########++++###########
######++++++############++++#########+++#########++++###########
#######++++#############+++++++++++++++++++++++++++++###########
#######++###############+++++++++++++++++++++++++++++###########
########################+++++++++++++++++++++++++++++###########
########################+++++++++++++++++++++++++++++###########
########################+++++#######+++++#######+++++###########
####################################+++++#######################
####################################+++++#######################
##############++#####+++++++++++++++++++++++++++++++++++########
##############+++####+++++++++++++++++++++++++++++++++++########
#############++++####+++++++++++++++++++++++++++++++++++########
#############+++++###+++++++++++++++++++++++++++++++++++########
############++++++###+++++++++++++++++++++++++++++++++++########
############++++++################++++++########################
###########+++++++################+++++#########################
###########++++++#################+++++#########################
##########+++++++++++++++++++++++++++++++++++++++++++++++++++###
##########+++++++++++++++++++++++++++++++++++++++++++++++++++###
#########++++++++++++++++++++++++++++++++++++++++++++++++++++###
#########++++++#+++++++++++++++++++++++++++++++++++++++++++++###
#########++++++#+++++++++++++++++++++++++++++++++++++++++++++###
########++++++#################+++++++#+++++####################
########++++++#################++++++##++++++###################
#######+++++++################+++++++###+++++###################
#######++++++################++++++#####+++++++#################
######+++++++################++++++######+++++++################
######++++++#################++++++######++++++++###############
#####+++++++###############+++++++#########+++++++##############
#####++++++###############++++++++#########+++++++++############
####++++++###########++#+++++++++###########++++++++++##########
####++++++#########+++++++++++###############+++++++++++########
###+++++++#####++++++++++++++##################+++++++++++#+####
#########+#####+++++++++++++####################++++++++++++####
################++++++++++########################+++++++++#####
################+++++++++############################+++++######
#################++++###########################################
################+###############################################
################################################################

cl-sparsematrix

| 16:07 | cl-sparsematrix - わだばLisperになる を含むブックマーク はてなブックマーク - cl-sparsematrix - わだばLisperになる

Clikiで更新されたものを片っ端からインストールしてみるということは、当然ながら自分が理解できる以外のものもインストールするということであり、今回は、疎行列に関してのパッケージなわけですが、疎行列って何?という私が試してみるのも無理がありますね(´▽`*)

ということで、インストールしただけで終了しました…。

作者は、Tamás K Papp氏で、他にも色々面白そうなパッケージを作成されている方のようです。

パッケージ名cl-sparsematrix
本拠地サイト404 Not Found
ClikiCLiki: cl-sparsematrix
ASDF-INSTALL
(asdf-install:install :cl-sparsematrix)

インストール

asdf-install可能なので、(asdf-install:install :cl-sparsematrix)すると、関連するパッケージを芋蔓式に取得します。

cl-numlib、ffa、cl-utilities等がインストールされるようです。

丁寧なPDFのドキュメントが附属してきます。