恐ろしく久しぶりにEmacs Lispを書いてみました。
というのもXAdES署名をスキーマ検証してエラーは「何行何カラム目」のように出てくるんですが、Emacsには行だけや先頭からの文字数を指定してカーソルを移動するものはあっても、行とカラムを指定してカーソル移動させるコマンドはありません。
そこで仕方なく作ってみたのがこれ(大したものではありません)
すっかり作法なんかも忘れていたんですが、"C:\Mule\lisp\*.el" などのソースをちょっと眺めた後、関数interactiveの書式を忘れたので M-x info でEmacs Lispのオンラインマニュアル見て書きました。(すっかりinfo のナビゲーションも忘れていたし、、、、、)
人工知能はあまり役に立たなかったけど、強力なテキストエディタEmacsと、Javaが生まれてきたのと、綺麗な(これが大事)オブジェクト指向設計だけは役に立ったかなと、、、、
JavaやRubyなどオブジェクト指向の言語を使えるからといって、オブジェクト指向ぽくない実装をされる方はいるようで、C++、JavaやRubyなどコード見てると結構mainに数百行の長ぁ〜〜〜いコードを超手続き的に書いてみたり、ループの入れ子を何段も作っちゃったりとかありますよね(^^;
というのもXAdES署名をスキーマ検証してエラーは「何行何カラム目」のように出てくるんですが、Emacsには行だけや先頭からの文字数を指定してカーソルを移動するものはあっても、行とカラムを指定してカーソル移動させるコマンドはありません。
そこで仕方なく作ってみたのがこれ(大したものではありません)
(defun goto-line-column (line-number column-number)
"goto line with column"
(interactive "nline: \nncolumn: ")
(goto-line line-number)
(let ((point-goto (+ (point) column-number)))
(goto-char point-goto)))
すっかり作法なんかも忘れていたんですが、"C:\Mule\lisp\*.el" などのソースをちょっと眺めた後、関数interactiveの書式を忘れたので M-x info でEmacs Lispのオンラインマニュアル見て書きました。(すっかりinfo のナビゲーションも忘れていたし、、、、、)
人工知能はあまり役に立たなかったけど、強力なテキストエディタEmacsと、Javaが生まれてきたのと、綺麗な(これが大事)オブジェクト指向設計だけは役に立ったかなと、、、、
JavaやRubyなどオブジェクト指向の言語を使えるからといって、オブジェクト指向ぽくない実装をされる方はいるようで、C++、JavaやRubyなどコード見てると結構mainに数百行の長ぁ〜〜〜いコードを超手続き的に書いてみたり、ループの入れ子を何段も作っちゃったりとかありますよね(^^;