Emacs组织模式,次要细节

时间:2013-07-25 00:38:14

标签: emacs org-mode

我仍然可以找到一些小细节来优化我的工作流程,

给定TODO列表,其中包含以下元素:

- [ ] task1
- [ ] task2

我想介绍一个新的“ - []”行,但“M - Enter”不会产生它(只是一个“ - ”)。

另一件事是如何生成一系列的东西。想想命令行扩展: {a..z}或{1..10}。如何生成所有元素:

 "a b c d ..." 

 "1 2 3 4 ..."?

3 个答案:

答案 0 :(得分:2)

组织模式将org-insert-todo-heading绑定到<M-S-return>,这会创建与前一级别具有相同状态的新标题。

-[ ] foo <cursor>将该命令扩展为

- [ ] foo
- [ ] <cursor>

也适用于其他标题类型,例如:

** TODO heading1<cursor>将该命令扩展为

** TODO heading1
** TODO <cursor>

答案 1 :(得分:1)

请在下次发布两个单独的问题。它的效率更高。

第一个问题

这不是newest org-mode

中的问题

第二个问题

我一直在玩那些完全正确的代码。 我刚刚在https://github.com/abo-abo/tiny发布了它。

该代码的tiny-expand的默认全局绑定是 C - ; 。 以下是一些可扩展模板:

m10
m5 10
m5,10
m5 10*xx
m5 10*xx&x
m5 10*xx&0x&x
m25+x?a&c
m25+x?A&c
m97,122stringx
m97,122stringxx
m97;122stringxupcasex
m10+3*100x
m\n10expx

你只需输入这些(有时)几个字符,然后输入 C - ; ,光标位于末尾 的表达。 表达式相应地替换为

0 1 2 3 4 5 6 7 8 9 10
5 6 7 8 9 10
5,6,7,8,9,10
25 36 49 64 81 100
19 24 31 40 51 64
0x19 0x24 0x31 0x40 0x51 0x64
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
aa,bb,cc,dd,ee,ff,gg,hh,ii,jj,kk,ll,mm,nn,oo,pp,qq,rr,ss,tt,uu,vv,ww,xx,yy,zz
aA;bB;cC;dD;eE;fF;gG;hH;iI;jJ;kK;lL;mM;nN;oO;pP;qQ;rR;sS;tT;uU;vV;wW;xX;yY;zZ
3 103 203 303 403 503 603 703 803 903 1003
1.0
2.718281828459045
7.38905609893065
20.085536923187668
54.598150033144236
148.4131591025766
403.4287934927351
1096.6331584284585
2980.9579870417283
8103.083927575384
22026.465794806718

我不知道你或其他人会发现它有用,但它对我有用, 发布它只需5分钟。所以如果你想要看看。

答案 2 :(得分:0)

这是关于你的第二个问题(关于系列):

(defun series (from to &optional delimit step formatter)
  (interactive "nSeries left bound: \nnSeries right bound: ")
  (let (delimiter step)
    (if (null current-prefix-arg)
        (setf delimiter " " step (if (< from to) 1 -1)
              formatter #'number-to-string)
      (setf delimiter (read-string "Delimit with: " ", ")
            step (read-number "Increment by: " 1)
            formatter
            (let ((minibuffer-completing-symbol t))
              (eval (read-from-minibuffer
                     "Number to string function: "
                      "#'char-to-string" read-expression-map t
                     'read-expression-history)))))
    (insert
     (mapconcat formatter
                (loop for i = from then (+ i step)
                      with tester = (if (< step 0) #'>= #'<=)
                      while (funcall tester i to)
                      collect i)
                delimiter))))

哦,我还没看到abo-abo发布了什么。无论如何,将把它留在这里作为替代。