如何在 Emacs Org-Mode 中锁定表字段(使它们只读,常量)?
Posted
技术标签:
【中文标题】如何在 Emacs Org-Mode 中锁定表字段(使它们只读,常量)?【英文标题】:How to lock table fields in Emacs Org-Mode (make them read only, constant)? 【发布时间】:2013-02-20 08:57:58 【问题描述】:我正在制作一个兵棋推演游戏的电子表格。有些领域有 定义单个模型的点值的常量值,我想 使这些字段只读/常量(不修改它们 偶然)。这是 Org-Mode 中的演示列表,有两个 骷髅单位(16 和 24 个模型)和两个骨龙(1 和 2 模型),两者都有升级(总结的附加值):
#+CONSTANTS: SKELETON=6 SKELETON_BOW=2 SKELETON_SWORD=1
#+CONSTANTS: BONE_DRAGON=60 BONE_DRAGON_POISON=20
|---+-------------+------+------+-----+----+-----|
| | _UNIT_ | P[1] | N[2] | + | N | + |
|---+-------------+------+------+-----+----+-----|
| # | SKELETON | 6 | 16 | 96 | 24 | 144 |
| # | Bow | 2 | 0 | 0 | 12 | 24 |
| # | Sword | 1 | 16 | 16 | 12 | 12 |
| # | *SUMS* | | | 112 | | 180 |
| # | *TOTAL* | 292 | | | | |
|---+-------------+------+------+-----+----+-----|
| # | BONE_DRAGON | 80 | 1 | 80 | 2 | 160 |
| # | Poison | 20 | 1 | 20 | 0 | 0 |
| # | *SUMS* | | | 100 | | 160 |
| # | *TOTAL* | 260 | | | | |
|---+-------------+------+------+-----+----+-----|
| # | *TOTAL* | 552 | | | | |
|---+-------------+------+------+-----+----+-----|
#+TBLFM: @2$3=$SKELETON::@2$5=(@2$3*@2$4)::@2$7=(@2$3*@2$6)::@3$3=$SKELETON_BOW::@3$5=(@3$3*@3$4)::@3$7=(@3$3*@3$6)::@4$3=$SKELETON_SWORD::@4$5=(@4$3*@4$4)::@4$7=(@4$3*@4$6)::@5$5=vsum(@2$5..@4$5)::@5$7=vsum(@2$7..@4$7)::@6$3=(@5$5+@5$7)::@7$3=$BONE_DRAGON::@7$5=(@7$3*@7$4)::@7$7=(@7$3*@7$6)::@8$3=$BONE_DRAGON_POISON::@8$5=(@8$3*@8$4)::@8$7=(@8$3*@8$6)::@9$5=vsum(@7$5..@8$5)::@9$7=vsum(@7$7..@8$7)::@10$3=(@9$5+@9$7)::@11$3=(@6$3+@10$3)
[1] Points per model
[2] Number of models
如您所见,我已经找到了一个带有常量的解决方案(constant.el 卡斯滕·多米尼克 (Carsten Dominik) 的包装 http://staff.science.uva.nl/~dominik/Tools/)。
已取得的成就:
恢复 PPM 的意外修改 常量只定义一次是否有标准的 Org-Mode 方法可以使字段真正只读? 我 在组织模式手册中没有找到答案。
【问题讨论】:
【参考方案1】:不确定 org-mode 方式,但"Emacs: make portion of buffer readonly" 可能会有所帮助。它的作用是使用 put-text-property 在缓冲区中设置只读属性。
【讨论】:
感谢您的链接,'make-region-read-only' 方法非常方便:)。不幸的是,它不适用于 Org Mode 表格,因此无法对其进行编辑。以上是关于如何在 Emacs Org-Mode 中锁定表字段(使它们只读,常量)?的主要内容,如果未能解决你的问题,请参考以下文章
使用emacs org-mode,如何在项目中发布未更改的文件?
如何在 emacs org-mode 中配置depend.el?