文字对齐Lisp
我有一个关于Lisp程序的理由的想法,如果有人觉得无聊,想试试,因为我不知道从哪里开始,我还是Lisp程序的新手。我想,如果有人制作一个lisp,它会将一个方框围绕一段文本分成9个部分,分别是上中、右上、左上、左中、右下、下中中、左下、右中和中中中。当你点击这些区域时,如果对任何人来说都有意义的话,它会使文本具有合理性。我发现自己经常更改对齐方式,我认为如果你添加ctrl+J或其他快捷键,这将是一个很好的例程。不知道这是不是很难,但如果有人同意这将是很好的,并希望尝试这将是很酷的。谢谢 从命令行中的命令justifytext开始干杯 ;; Justification Macros
;; Alan J. Thomspon
(defun _justifyIt (justify title / ss)
(princ (strcat "\nSelect *Text to " title " justify: "))
(if (setq ss (ssget "_:L" '((0 . "ATTDEF,MTEXT,TEXT"))))
(command "_.justifytext" ss "" justify)
)
(princ)
)
(defun c:JC (/) (_justifyIt "_MC" "Middle Center"))
(defun c:JL (/) (_justifyIt "_ML" "Middle Left"))
(defun c:JR (/) (_justifyIt "_MR" "Middle Right"))
(defun c:BC (/) (_justifyIt "_BC" "Bottom Center"))
(defun c:TC (/) (_justifyIt "_TC" "Top Center")) 我确实喜欢Lisp程序。不过,我添加了右上/左和右下/左,因为我经常使用它们。我只是想找到最快的方法来做到这一点,因为在很多情况下,我改变了很多理由。谢谢你的帮助,艾伦。以下是我添加的内容,效果很好:
;; Justification Macros
;; Alan J. Thomspon
(defun _justifyIt (justify title / ss)
(princ (strcat "\nSelect *Text to " title " justify: "))
(if (setq ss (ssget "_:L" '((0 . "ATTDEF,MTEXT,TEXT"))))
(command "_.justifytext" ss "" justify)
)
(princ)
)
(defun c:ML (/) (_justifyIt "_ML" "Middle Left"))
(defun c:MR (/) (_justifyIt "_MR" "Middle Right"))
(defun c:BC (/) (_justifyIt "_BC" "Bottom Center"))
(defun c:TC (/) (_justifyIt "_TC" "Top Center"))
(defun c:BR (/) (_justifyIt "_BR" "Bottom Right"))
(defun c:BL (/) (_justifyIt "_BL" "Bottom Left"))
(defun c:TL (/) (_justifyIt "_TL" "Top Left"))
(defun c:TR (/) (_justifyIt "_TR" "Top Right"))
(defun c:MC (/) (_justifyIt "_MC" "Middle Center")) 很高兴听到你找到了有用的东西。顺便说一句,你们并没有把所有的东西都抄下来——看最后一行。
你说得快,在你回答之前我没有修好,但现在就好了。谢谢 仅供参考,您将两次定义同一选项(中间点等)——一次是使用我的一些宏,另一次是使用您的宏。
是的,我注意到了这一点,再次编辑了它,并使用了我的。我不知道JC、JR、JL而不是MC、MR和ML是否有特殊原因?我想是因为你已经用完了。 对的我通常只使用JC/JR/JL,所以它最初是作为Justify开始的。
页:
[1]