私の質問は、org-mode テーブルを ditaa ダイアグラムに変換できる関数を期待していることから来ています。私がやろうとしていることは次のとおりです。
- 「|」を見つける 左/右/上/下に「-」がある場合は、「+」に変更します
- 「|」がない場合は「+」を見つける 左/右/上/下で、「-」に変更します
上/下の文字または関数全体を検索する方法を誰かに教えてもらえますか?
まず、元のソリューションを提供してくれた @legoscia に感謝します。
(next-line)/(previous-line) を試すと、「バッファの終わり、バッファの始まり」などの問題が発生しました。次に、elisp のマニュアルを検索しました。forward-line を使用することをお勧めします。それから私はここに私の解決策を得ました:
(defun get-char-below (&optional point)
"Return the character one line down from POINT.
If POINT is nil or omitted, use the current position of point."
(save-excursion
(when point
(goto-char point))
(let ((column (current-column)))
(if (= (forward-line 1) 0)
(if (= column (move-to-column column))
(char-after)
nil)
nil))))