howm で書いたものをそのままはてなに投稿したいなぁと思って
書いてみた
#!/usr/bin/env python # -*- coding: utf-8 -*- import sys from hatenadiary import HatenaDiary from pit import Pit def getDiary(): conf = Pit.get('hatena.ne.jp',{'require' : {'userid':'Your hatena.ne.jp userid}','password':'Your hatena.ne.jp password'}}) return HatenaDiary(conf['userid'],conf['password']) if __name__ == '__main__': if len(sys.argv) == 1: print 'no file' exit(1) else: file_path = sys.argv[1] lines = [x for x in open(file_path)] title = lines[0].replace('=',"") body = "".join(lines[2:]) diary = getDiary() result = diary.post(title,body) print 'post:' + result[0]['title'].encode('utf-8') ,
単純に 1行目をタイトルにして3行目以降を本文として投稿してるだけ
これを emacs から呼びだす Lisp
(setq howm-menu-lang 'ja) (require 'howm-mode) (setq howm-directory "~/.howm/")(setq howm-menu-lang 'ja) (global-set-key "\C-c,," 'howm-menu) (autoload 'howm-menu "howm" "Hitori Otegaru Wiki Modoki" t) (defvar HOWM_PY "~/.emacs.d/conf/howm.py" "*The command to send howm to hatena") (defun hatena-post () (interactive) (call-process HOWM_PY nil 0 nil buffer-file-name )) (define-key howm-mode-map "\C-cd" 'hatena-post)
で, C-c d で投稿出来るようになったんだけど,
結果を minibuffer に表示する方法がわからない><
0 の buffer-name に t って書くと カレントバッファに
書かれるんだけど,minibaffer ってどうやって指定するんだろう><
追記:
ここまでも id:nishiohirokazu に色々教えてもらって出来るようになりました!!
ありがとう!!
http://d.hatena.ne.jp/nishiohirokazu/20090305/1236252726
追記2:
(define-key global-map "\C-cd" は駄目な気がする><
追記3:
howm-mode-map とかあった!!
ので修正した