Commit | Line | Data |
---|---|---|
2a12997c BG |
1 | ORG NEWS -- history of user-visible changes. -*- org -*- |
2 | ||
3 | Copyright (C) 2012 Free Software Foundation, Inc. | |
4 | See the end of the file for license conditions. | |
5 | ||
6 | Please send Org bug reports to emacs-orgmode@gnu.org. | |
7 | ||
8 | * Incompatible changes | |
9 | ||
10 | ** Emacs 21 support has been dropped | |
11 | :PROPERTIES: | |
12 | :OrgVersion: 7.01 | |
13 | :END: | |
14 | ||
15 | Do not use Org mode 7.xx with Emacs 21, use [[http://orgmode.org/org-6.36c.zip][version 6.36c]] instead. | |
16 | ||
17 | ** XEmacs support requires the XEmacs development version | |
18 | :PROPERTIES: | |
19 | :OrgVersion: 7.01 | |
20 | :END: | |
21 | ||
22 | To use Org mode 7.xx with XEmacs, you need to run the developer | |
23 | version of XEmacs. We were about to drop XEmacs support entirely, | |
24 | but Michael Sperber stepped in and made changes to XEmacs that made | |
25 | it easier to keep the support. Thanks to Michael for this | |
26 | last-minute save. | |
27 | ||
28 | ** New keys for TODO sparse trees | |
29 | :PROPERTIES: | |
30 | :OrgVersion: 7.01 | |
31 | :END: | |
32 | ||
33 | The key =C-c C-v= is now reserved for Org Babel action. TODO sparse | |
34 | trees can still be made with =C-c / t= (all not-done states) and =C-c / | |
35 | T= (specific states). | |
36 | ||
37 | ** The Agenda =org-agenda-ndays= is now obsolete | |
38 | :PROPERTIES: | |
39 | :OrgVersion: 7.4 | |
40 | :END: | |
41 | ||
42 | The variable =org-agenda-ndays= is obsolete - please use | |
43 | =org-agenda-span= instead. | |
44 | ||
45 | Thanks to Julien Danjou for this. | |
46 | ||
47 | ** Changes to the intended use of =org-export-latex-classes= | |
48 | :PROPERTIES: | |
49 | :OrgVersion: 6.35 | |
50 | :END: | |
51 | ||
52 | So far this variable has been used to specify the complete header of the | |
53 | LaTeX document, including all the =\usepackage= calls necessary for the | |
54 | document. This setup makes it difficult to maintain the list of | |
55 | packages that Org itself would like to call, for example for the special | |
56 | symbol support it needs. | |
57 | ||
58 | First of all, you can *opt out of this change* in the following way: You | |
59 | can say: /I want to have full control over headers, and I will take | |
60 | responsibility to include the packages Org needs/. If that is what you | |
61 | want, add this to your configuration and skip the rest of this section | |
62 | (except maybe for the description of the =[EXTRA]= place holder): | |
63 | ||
64 | #+begin_src emacs-lisp | |
65 | (setq org-export-latex-default-packages-alist nil | |
66 | org-export-latex-packages-alist nil) | |
67 | #+end_src | |
68 | ||
69 | /Continue to read here if you want to go along with the modified setup./ | |
70 | ||
71 | There are now two variables that should be used to list the LaTeX | |
72 | packages that need to be included in all classes. The header definition | |
73 | in =org-export-latex-classes= should then not contain the corresponding | |
74 | =\usepackage= calls (see below). | |
75 | ||
76 | The two new variables are: | |
77 | ||
78 | 1. =org-export-latex-default-packages-alist= :: This is the variable | |
79 | where Org-mode itself puts the packages it needs. Normally you | |
80 | should not change this variable. The only reason to change it | |
81 | anyway is when one of these packages causes a conflict with another | |
82 | package you want to use. Then you can remove that packages and | |
83 | hope that you are not using Org-mode functionality that needs it. | |
84 | ||
85 | 2. =org-export-latex-packages-alist= :: This is the variable where you | |
86 | can put the packages that you'd like to use across all classes. | |
87 | ||
88 | The sequence how these customizations will show up in the LaTeX | |
89 | document are: | |
90 | ||
91 | 1. Header from =org-export-latex-classes= | |
92 | 2. =org-export-latex-default-packages-alist= | |
93 | 3. =org-export-latex-packages-alist= | |
94 | 4. Buffer-specific things set with =#+LaTeX_HEADER:= | |
95 | ||
96 | If you want more control about which segment is placed where, or if you | |
97 | want, for a specific class, have full control over the header and | |
98 | exclude some of the automatic building blocks, you can put the following | |
99 | macro-like place holders into the header: | |
100 | ||
101 | #+begin_example | |
102 | [DEFAULT-PACKAGES] \usepackage statements for default packages | |
103 | [NO-DEFAULT-PACKAGES] do not include any of the default packages | |
104 | [PACKAGES] \usepackage statements for packages | |
105 | [NO-PACKAGES] do not include the packages | |
106 | [EXTRA] the stuff from #+LaTeX_HEADER | |
107 | [NO-EXTRA] do not include #+LaTeX_HEADER stuff | |
108 | #+end_example | |
109 | ||
110 | If you have currently customized =org-export-latex-classes=, you should | |
111 | revise that customization and remove any package calls that are covered | |
112 | by =org-export-latex-default-packages-alist=. This applies to the | |
113 | following packages: | |
114 | ||
115 | - inputenc | |
116 | - fontenc | |
117 | - fixltx2e | |
118 | - graphicx | |
119 | - longtable | |
120 | - float | |
121 | - wrapfig | |
122 | - soul | |
123 | - t1enc | |
124 | - textcomp | |
125 | - marvosym | |
126 | - wasysym | |
127 | - latexsym | |
128 | - amssymb | |
129 | - hyperref | |
130 | ||
131 | If one of these packages creates a conflict with another package you are | |
132 | using, you can remove it from =org-export-latex-default-packages-alist=. | |
133 | But then you risk that some of the advertised export features of Org | |
134 | will not work properly. | |
135 | ||
136 | You can also consider moving packages that you use in all classes to | |
137 | =org-export-latex-packages-alist=. If necessary, put the place holders | |
138 | so that the packages get loaded in the right sequence. As said above, | |
139 | for backward compatibility, if you omit the place holders, all the | |
140 | variables will dump their content at the end of the header. | |
141 | ||
142 | ** The constant =org-html-entities= is obsolete | |
143 | :PROPERTIES: | |
144 | :OrgVersion: 6.35 | |
145 | :END: | |
146 | ||
147 | Its content is now part of the new constant =org-entities=, which is | |
148 | defined in the file org-entities.el. =org-html-entities= was an internal | |
149 | variable, but it is possible that some users did write code using it. | |
150 | ||
151 | ** `org-bbdb-anniversary-format-alist' has changed | |
152 | :PROPERTIES: | |
153 | :OrgVersion: 7.5 | |
154 | :END: | |
155 | ||
156 | Please check the docstring and update your settings accordingly. | |
157 | ||
158 | ** Deleted =org-mode-p= | |
159 | :PROPERTIES: | |
160 | :OrgVersion: 7.8 | |
161 | :END: | |
162 | ||
163 | This function has been deleted: please update your code. | |
164 | ||
165 | * Important new features | |
166 | ||
167 | ** New Org to ODT exporter | |
168 | :PROPERTIES: | |
169 | :OrgVersion: 7.8 | |
170 | :END: | |
171 | ||
172 | Jambunathan's Org to ODT exporter is now part of Org. | |
173 | ||
174 | To use it, it `C-c C-e o' in an Org file. See the documentation for more | |
175 | information on how to customize it. | |
176 | ||
177 | ** org-capture.el is now the default capture system | |
178 | :PROPERTIES: | |
179 | :OrgVersion: 7.01 | |
180 | :END: | |
181 | ||
182 | This replaces the earlier system org-remember. The manual only describes | |
183 | org-capture, but for people who prefer to continue to use org-remember, | |
184 | we keep a static copy of the former manual section [[http://orgmode.org/org-remember.pdf][chapter about | |
185 | remember]]. | |
186 | ||
187 | The new system has a technically cleaner implementation and more | |
188 | possibilities for capturing different types of data. See [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's | |
189 | announcement]] for more details. | |
190 | ||
191 | To switch over to the new system: | |
192 | ||
193 | 1. Run | |
194 | ||
195 | : M-x org-capture-import-remember-templates RET | |
196 | ||
197 | to get a translated version of your remember templates into the | |
198 | new variable =org-capture-templates=. This will "mostly" work, | |
199 | but maybe not for all cases. At least it will give you a good | |
200 | place to modify your templates. After running this command, | |
201 | enter the customize buffer for this variable with | |
202 | ||
203 | : M-x customize-variable RET org-capture-templates RET | |
204 | ||
205 | and convince yourself that everything is OK. Then save the | |
206 | customization. | |
207 | ||
208 | 2. Bind the command =org-capture= to a key, similar to what you did | |
209 | with org-remember: | |
210 | ||
211 | : (define-key global-map "\C-cc" 'org-capture) | |
212 | ||
213 | If your fingers prefer =C-c r=, you can also use this key once | |
214 | you have decided to move over completely to the new | |
215 | implementation. During a test time, there is nothing wrong | |
216 | with using both system in parallel. | |
217 | ||
218 | * New libraries | |
219 | ||
220 | ** New Org libraries | |
221 | *** org-eshell.el (Konrad Hinsen) | |
222 | :PROPERTIES: | |
223 | :OrgVersion: 7.8 | |
224 | :END: | |
225 | ||
226 | Implement links to eshell buffers. | |
227 | ||
228 | *** org-special-blocks (Carsten Dominik) | |
229 | :PROPERTIES: | |
230 | :OrgVersion: 7.8 | |
231 | :END: | |
232 | ||
233 | This package generalizes the #+begin_foo and #+end_foo tokens. | |
234 | ||
235 | To use, put the following in your init file: | |
236 | ||
237 | #+BEGIN_EXAMPLE | |
238 | (require 'org-special-blocks) | |
239 | #+END_EXAMPLE | |
240 | ||
241 | The tokens #+begin_center, #+begin_verse, etc. existed previously. This | |
242 | package generalizes them (at least for the LaTeX and html exporters). When | |
243 | a #+begin_foo token is encountered by the LaTeX exporter, it is expanded | |
244 | into \begin{foo}. The text inside the environment is not protected, as | |
245 | text inside environments generally is. When #+begin_foo is encountered by | |
246 | the html exporter, a div with class foo is inserted into the HTML file. It | |
247 | is up to the user to add this class to his or her stylesheet if this div is | |
248 | to mean anything. | |
249 | ||
250 | *** org-taskjuggler.el (Christian Egli) | |
251 | :PROPERTIES: | |
252 | :OrgVersion: 7.01 | |
253 | :END: | |
254 | ||
255 | Christian Egli's /org-taskjuggler.el/ module is now part of Org. He | |
256 | also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it. | |
257 | ||
258 | *** org-ctags.el (Paul Sexton) | |
259 | :PROPERTIES: | |
260 | :OrgVersion: 6.34 | |
261 | :END: | |
262 | ||
263 | Targets like =<<my target>>= can now be found by Emacs' etag | |
264 | functionality, and Org-mode links can be used to to link to etags, also | |
265 | in non-Org-mode files. For details, see the file /org-ctags.el/. | |
266 | ||
267 | This feature uses a new hook =org-open-link-functions= which will call | |
268 | function to do something special with text links. | |
269 | ||
270 | Thanks to Paul Sexton for this contribution. | |
271 | ||
272 | *** org-docview.el (Jan Böcker) | |
273 | :PROPERTIES: | |
274 | :OrgVersion: 6.34 | |
275 | :END: | |
276 | ||
277 | This new module allows links to various file types using docview, where | |
278 | Emacs displays images of document pages. Docview link types can point | |
279 | to a specific page in a document, for example to page 131 of the | |
280 | Org-mode manual: | |
281 | ||
282 | : [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]] | |
283 | ||
284 | Thanks to Jan Böcker for this contribution. | |
285 | ||
286 | ** New Babel libraries | |
287 | ||
288 | - ob-picolisp.el (Thorsten Jolitz) | |
289 | - ob-fortran.el (Sergey Litvinov) | |
290 | - ob-shen.el (Eric Schulte) | |
291 | - ob-maxima.el (Eric S Fraga) | |
292 | - ob-java.el (Eric Schulte) | |
293 | - ob-lilypond.el (Martyn Jago) | |
294 | - ob-awk.el (Eric Schulte) | |
295 | ||
296 | * Other new features and various enhancements | |
297 | ||
298 | ** Hyperlinks | |
299 | ||
300 | *** Org-Bibtex -- major improvements | |
301 | :PROPERTIES: | |
302 | :OrgVersion: 7.6 | |
303 | :END: | |
304 | ||
305 | Provides support for managing bibtex bibliographical references | |
306 | data in headline properties. Each headline corresponds to a | |
307 | single reference and the relevant bibliographic meta-data is | |
308 | stored in headline properties, leaving the body of the headline | |
309 | free to hold notes and comments. Org-bibtex is aware of all | |
310 | standard bibtex reference types and fields. | |
311 | ||
312 | The key new functions are | |
313 | ||
314 | - org-bibtex-check :: queries the user to flesh out all required | |
315 | (and with prefix argument optional) bibtex fields available | |
316 | for the specific reference =type= of the current headline. | |
317 | ||
318 | - org-bibtex-create :: Create a new entry at the given level, | |
319 | using org-bibtex-check to flesh out the relevant fields. | |
320 | ||
321 | - org-bibtex-yank :: Yank a bibtex entry on the kill ring as a | |
322 | formatted Org-mode headline into the current buffer | |
323 | ||
324 | - org-bibtex-export-to-kill-ring :: Export the current headline | |
325 | to the kill ring as a formatted bibtex entry. | |
326 | ||
327 | ||
328 | ||
329 | *** org-gnus.el now allows link creation from messages | |
330 | :PROPERTIES: | |
331 | :OrgVersion: 7.5 | |
332 | :END: | |
333 | ||
334 | You can now create links from messages. This is particularily | |
335 | useful when the user wants to stored messages that he sends, for | |
336 | later check. Thanks to Ulf Stegemann for the patch. | |
337 | ||
338 | ||
339 | ||
340 | *** Modified link escaping | |
341 | :PROPERTIES: | |
342 | :OrgVersion: 7.5 | |
343 | :END: | |
344 | ||
345 | David Maus worked on `org-link-escape'. See [[http://article.gmane.org/gmane.emacs.orgmode/37888][his message]]: | |
346 | ||
347 | : Percent escaping is used in Org mode to escape certain characters | |
348 | : in links that would either break the parser (e.g. square brackets | |
349 | : in link target oder description) or are not allowed to appear in | |
350 | : a particular link type (e.g. non-ascii characters in a http: | |
351 | : link). | |
352 | : | |
353 | : With this change in place Org will apply percent escaping and | |
354 | : unescaping more consistently especially for non-ascii characters. | |
355 | : Additionally some of the outstanding bugs or glitches concerning | |
356 | : percent escaped links are solved. | |
357 | ||
358 | Thanks a lot to David for this work. | |
359 | ||
360 | ||
361 | ||
362 | *** Make =org-store-link= point to directory in a dired buffer | |
363 | :PROPERTIES: | |
364 | :OrgVersion: 6.35 | |
365 | :END: | |
366 | ||
367 | When, in a dired buffer, the cursor is not in a line listing a | |
368 | file, `org-store-link' will store a link to the directory. | |
369 | ||
370 | Patch by Stephen Eglen. | |
371 | ||
372 | ||
373 | ||
374 | *** Allow regexps in =org-file-apps= to capture link parameters | |
375 | :PROPERTIES: | |
376 | :OrgVersion: 6.35 | |
377 | :END: | |
378 | ||
379 | The way extension regexps in =org-file-apps= are handled has | |
380 | changed. Instead of matching against the file name, the regexps | |
381 | are now matched against the whole link, and you can use grouping | |
382 | to extract link parameters which you can then use in a command | |
383 | string to be executed. | |
384 | ||
385 | For example, to allow linking to PDF files using the syntax | |
386 | =file:/doc.pdf::<page number>=, you can add the following entry to | |
387 | org-file-apps: | |
388 | ||
389 | #+begin_example | |
390 | Extension: \.pdf::\([0-9]+\)\' | |
391 | Command: evince "%s" -p %1 | |
392 | #+end_example | |
393 | ||
394 | Thanks to Jan Böcker for a patch to this effect. | |
395 | ||
396 | ** Dates and time | |
397 | ||
398 | *** Allow relative time when scheduling/adding a deadline | |
399 | :PROPERTIES: | |
400 | :OrgVersion: 7.7 | |
401 | :END: | |
402 | ||
403 | You can now use relative duration strings like "-2d" or "++3w" | |
404 | when calling =org-schedule= or =org-deadline=: it will schedule | |
405 | (or set the deadline for) the item respectively two days before | |
406 | today and three weeks after the current timestamp, if any. | |
407 | ||
408 | You can use this programmatically: =(org-schedule nil "+2d")= | |
409 | will work on the current entry. | |
410 | ||
411 | You can also use this while (bulk-)rescheduling and | |
412 | (bulk-)resetting the deadline of (several) items from the agenda. | |
413 | ||
414 | Thanks to Memnon Anon for a heads up about this! | |
415 | ||
416 | ||
417 | ||
418 | ||
419 | *** American-style dates are now understood by =org-read-date= | |
420 | :PROPERTIES: | |
421 | :OrgVersion: 6.35 | |
422 | :END: | |
423 | ||
424 | So when you are prompted for a date, you can now answer like this | |
425 | ||
426 | #+begin_example | |
427 | 2/5/3 --> 2003-02-05 | |
428 | 2/5 --> <CURRENT-YEAR>-02-05 | |
429 | #+end_example | |
430 | ||
431 | ** Agenda | |
432 | ||
433 | *** =org-agenda-custom-commands= has a default value | |
434 | :PROPERTIES: | |
435 | :OrgVersion: 7.8 | |
436 | :END: | |
437 | ||
438 | This option used to be `nil' by default. This now has a default | |
439 | value, displaying an agenda and all TODOs. See the docstring for | |
440 | details. Thanks to Carsten for this. | |
441 | ||
442 | ||
443 | *** Improved filtering through =org-agenda-to-appt= | |
444 | :PROPERTIES: | |
445 | :OrgVersion: 7.8 | |
446 | :END: | |
447 | ||
448 | The new function allows the user to refine the scope of entries | |
449 | to pass to =org-agenda-get-day-entries= and allows to filter out | |
450 | entries using a function. | |
451 | ||
452 | Thanks to Peter Münster for raising a related issue and to | |
453 | Tassilo Horn for this idea. Also thanks to Peter Münster for | |
454 | [[git:68ffb7a7][fixing a small bug]] in the final implementation. | |
455 | ||
456 | ||
457 | ||
458 | *** Allow ap/pm times in agenda time grid | |
459 | :PROPERTIES: | |
460 | :OrgVersion: 7.4 | |
461 | :END: | |
462 | ||
463 | Times in the agenda can now be displayed in am/pm format. See the new | |
464 | variable =org-agenda-timegrid-use-ampm=. Thanks to C. A. Webber for | |
465 | a patch to this effect. | |
466 | ||
467 | ||
468 | ||
469 | *** Agenda: Added a bulk "scattering" command | |
470 | :PROPERTIES: | |
471 | :OrgVersion: 7.4 | |
472 | :END: | |
473 | ||
474 | =B S= in the agenda buffer will cause tasks to be rescheduled a random | |
475 | number of days into the future, with 7 as the default. This is useful | |
476 | if you've got a ton of tasks scheduled for today, you realize you'll | |
477 | never deal with them all, and you just want them to be distributed | |
478 | across the next N days. When called with a prefix arg, rescheduling | |
479 | will avoid weekend days. | |
480 | ||
481 | Thanks to John Wiegley for this. | |
482 | ||
483 | ** Exporting | |
484 | ||
485 | *** Simplification of org-export-html-preamble/postamble | |
486 | :PROPERTIES: | |
487 | :OrgVersion: 7.5 | |
488 | :END: | |
489 | ||
490 | When set to `t', export the preamble/postamble as usual, honoring the | |
491 | =org-export-email/author/creator-info= variables. | |
492 | ||
493 | When set to a formatting string, insert this string. See the docstring | |
494 | of these variable for details about available %-sequences. | |
495 | ||
496 | You can set =:html-preamble= in publishing project in the same way: `t' | |
497 | means to honor =:email/creator/author-info=, and a formatting string | |
498 | will insert a string. | |
499 | ||
500 | *** New exporters to Latin-1 and UTF-8 | |
501 | :PROPERTIES: | |
502 | :OrgVersion: 6.35 | |
503 | :END: | |
504 | ||
505 | While Ulf Stegemann was going through the entities list to improve the | |
506 | LaTeX export, he had the great idea to provide representations for many | |
507 | of the entities in Latin-1, and for all of them in UTF-8. This means | |
508 | that we can now export files rich in special symbols to Latin-1 and to | |
509 | UTF-8 files. These new exporters can be reached with the commands =C-c | |
510 | C-e n= and =C-c C-e u=, respectively. | |
511 | ||
512 | When there is no representation for a given symbol in the targeted | |
513 | coding system, you can choose to keep the TeX-macro-like | |
514 | representation, or to get an "explanatory" representation. For | |
515 | example, =\simeq= could be represented as "[approx. equal to]". Please | |
516 | use the variable =org-entities-ascii-explanatory= to state your | |
517 | preference. | |
518 | ||
519 | *** HTML export: Add class to outline containers using property | |
520 | :PROPERTIES: | |
521 | :OrgVersion: 6.35 | |
522 | :END: | |
523 | ||
524 | The =HTML_CONTAINER_CLASS= property can now be used to add a class name | |
525 | to the outline container of a node in HTML export. | |
526 | ||
527 | *** Throw an error when creating an image from a LaTeX snippet fails | |
528 | :PROPERTIES: | |
529 | :OrgVersion: 6.35 | |
530 | :END: | |
531 | ||
532 | This behavior can be configured with the new option variable | |
533 | =org-format-latex-signal-error=. | |
534 | ||
535 | *** Support for creating BEAMER presentations from Org-mode documents | |
536 | :PROPERTIES: | |
537 | :OrgVersion: 6.34 | |
538 | :END: | |
539 | ||
540 | Org-mode documents or subtrees can now be converted directly in to | |
541 | BEAMER presentation. Turning a tree into a simple presentations is | |
542 | straight forward, and there is also quite some support to make richer | |
543 | presentations as well. See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER section]] in the manual for more | |
544 | details. | |
545 | ||
546 | Thanks to everyone who has contributed to the discussion about BEAMER | |
547 | support and how it should work. This was a great example for how this | |
548 | community can achieve a much better result than any individual could. | |
549 | ||
550 | ** Refiling | |
551 | ||
552 | *** Refile targets can now be cached | |
553 | :PROPERTIES: | |
554 | :OrgVersion: 7.01 | |
555 | :END: | |
556 | ||
557 | You can turn on caching of refile targets by setting the variable | |
558 | =org-refile-use-cache=. This should speed up refiling if you have many | |
559 | eligible targets in many files. If you need to update the cache | |
560 | because Org misses a newly created entry or still offers a deleted one, | |
561 | press =C-0 C-c C-w=. | |
562 | ||
563 | *** New logging support for refiling | |
564 | :PROPERTIES: | |
565 | :OrgVersion: 6.35 | |
566 | :END: | |
567 | ||
568 | Whenever you refile an item, a time stamp and even a note can be added | |
569 | to this entry. For details, see the new option =org-log-refile=. | |
570 | ||
571 | Thanks to Charles Cave for this idea. | |
572 | ||
573 | ** Completion | |
574 | ||
575 | *** In-buffer completion is now done using John Wiegleys pcomplete.el | |
576 | :PROPERTIES: | |
577 | :OrgVersion: 7.4 | |
578 | :END: | |
579 | ||
580 | Thanks to John Wiegley for much of this code. | |
581 | ||
582 | ** Tables | |
583 | ||
584 | *** New command =org-table-transpose-table-at-point= | |
585 | :PROPERTIES: | |
586 | :OrgVersion: 7.8 | |
587 | :END: | |
588 | ||
589 | See the docstring. This hack from Juan Pechiar is now part of Org's | |
590 | core. Thanks to Juan! | |
591 | ||
592 | *** Display field's coordinates when editing it with =C-c `= | |
593 | :PROPERTIES: | |
594 | :OrgVersion: 7.7 | |
595 | :END: | |
596 | ||
597 | When editing a field with =C-c `=, the field's coordinate will the | |
598 | displayed in the buffer. | |
599 | ||
600 | Thanks to Michael Brand for a patch to this effect. | |
601 | ||
602 | *** Spreadsheet computation of durations and time values | |
603 | :PROPERTIES: | |
604 | :OrgVersion: 7.6 | |
605 | :END: | |
606 | ||
607 | If you want to compute time values use the =T= flag, either in Calc | |
608 | formulas or Elisp formulas: | |
609 | ||
610 | | Task 1 | Task 2 | Total | | |
611 | |--------+--------+---------| | |
612 | | 35:00 | 35:00 | 1:10:00 | | |
613 | #+TBLFM: @2$3=$1+$2;T | |
614 | ||
615 | Values must be of the form =[HH:]MM:SS=, where hours are optional. | |
616 | ||
617 | Thanks to Martin Halder, Eric Schulte and Carsten for code and feedback | |
618 | on this. | |
619 | ||
620 | *** Implement formulas applying to field ranges | |
621 | :PROPERTIES: | |
622 | :OrgVersion: 7.5 | |
623 | :END: | |
624 | ||
625 | Carsten implemented this field-ranges formulas. | |
626 | ||
627 | : A frequently requested feature for tables has been to be able to define | |
628 | : row formulas in a way similar to column formulas. The patch below allows | |
629 | : things like | |
630 | : | |
631 | : @3= | |
632 | : @2$2..@5$7= | |
633 | : @I$2..@II$4= | |
634 | : | |
635 | : as the left hand side for table formulas in order to write a formula that | |
636 | : is valid for an entire column or for a rectangular section in a | |
637 | : table. | |
638 | ||
639 | Thanks a lot to Carsten for this. | |
640 | ||
641 | *** Sending radio tables from org buffers is now allowed | |
642 | :PROPERTIES: | |
643 | :OrgVersion: 7.4 | |
644 | :END: | |
645 | ||
646 | Org radio tables can no also be sent inside Org buffers. Also, there | |
647 | is a new hook which get called after a table has been sent. | |
648 | ||
649 | Thanks to Seweryn Kokot. | |
650 | ||
651 | ** Lists | |
652 | ||
653 | *** Improved handling of lists | |
654 | :PROPERTIES: | |
655 | :OrgVersion: 7.5 | |
656 | :END: | |
657 | ||
658 | Nicolas Goaziou extended and improved the way Org handles lists. | |
659 | ||
660 | 1. Indentation of text determines again end of items in lists. So, some | |
661 | text less indented than the previous item doesn't close the whole | |
662 | list anymore, only all items more indented than it. | |
663 | ||
664 | 2. Alphabetical bullets are implemented, through the use of the | |
665 | variable `org-alphabetical-lists'. This also adds alphabetical | |
666 | counters like [@c] or [@W]. | |
667 | ||
668 | 3. Lists can now safely contain drawers, inline tasks, or various | |
669 | blocks, themselves containing lists. Two variables are controlling | |
670 | this: `org-list-forbidden-blocks', and `org-list-export-context'. | |
671 | ||
672 | 4. Improve `newline-and-indent' (C-j): used in an item, it will keep | |
673 | text from moving at column 0. This allows to split text and make | |
674 | paragraphs and still not break the list. | |
675 | ||
676 | 5. Improve `org-toggle-item' (C-c -): used on a region with standard | |
677 | text, it will change the region into one item. With a prefix | |
678 | argument, it will fallback to the previous behavior and make every | |
679 | line in region an item. It permits to easily integrate paragraphs | |
680 | inside a list. | |
681 | ||
682 | 6. `fill-paragraph' (M-q) now understands lists. It can freely be used | |
683 | inside items, or on text just after a list, even with no blank line | |
684 | around, without breaking list structure. | |
685 | ||
686 | Thanks a lot to Nicolas for all this! | |
687 | ||
688 | ** Inline display of linked images | |
689 | :PROPERTIES: | |
690 | :OrgVersion: 6.36 | |
691 | :END: | |
692 | ||
693 | Images can now be displayed inline. The key C-c C-x C-v does toggle the | |
694 | display of such images. Note that only image links that have no | |
695 | description part will be inlined. | |
696 | ||
697 | ** Implement offsets for ordered lists | |
698 | :PROPERTIES: | |
699 | :OrgVersion: 6.36 | |
700 | :END: | |
701 | ||
702 | If you want to start an ordered plain list with a number different from | |
703 | 1, you can now do it like this: | |
704 | ||
705 | : 1. [@start:12] will star a lit a number 12 | |
706 | ||
707 | ** Babel: code block body expansion for table and preview | |
708 | :PROPERTIES: | |
709 | :OrgVersion: 6.36 | |
710 | :END: | |
711 | ||
712 | In org-babel, code is "expanded" prior to evaluation. I.e. the code that | |
713 | is actually evaluated comprises the code block contents, augmented with | |
714 | the extra code which assigns the referenced data to variables. It is now | |
715 | possible to preview expanded contents, and also to expand code during | |
716 | during tangling. This expansion takes into account all header arguments, | |
717 | and variables. | |
718 | ||
719 | A new key-binding `C-c M-b p' bound to `org-babel-expand-src-block' can | |
720 | be used from inside of a source code block to preview its expanded | |
721 | contents (which can be very useful for debugging). tangling | |
722 | ||
723 | The expanded body can now be tangled, this includes variable values | |
724 | which may be the results of other source-code blocks, or stored in | |
725 | headline properties or tables. One possible use for this is to allow | |
726 | those using org-babel for their emacs initialization to store values | |
727 | (e.g. usernames, passwords, etc...) in headline properties or in tables. | |
728 | ||
729 | Org-babel now supports three new header arguments, and new default | |
730 | behavior for handling horizontal lines in tables (hlines), column names, | |
731 | and rownames across all languages. | |
732 | ||
733 | ** Editing Convenience and Appearance | |
734 | ||
735 | *** New command =org-copy-visible= (=C-c C-x v=) | |
736 | :PROPERTIES: | |
737 | :OrgVersion: 7.7 | |
738 | :END: | |
739 | ||
740 | This command will copy the visible text in the region into the kill | |
741 | ring. Thanks to Florian Beck for this function and to Carsten for | |
742 | adding it to org.el and documenting it! | |
743 | ||
744 | *** Make it possible to protect hidden subtrees from being killed by =C-k= | |
745 | :PROPERTIES: | |
746 | :OrgVersion: 7.01 | |
747 | :END: | |
748 | ||
749 | See the new variable =org-ctrl-k-protect-subtree=. This was a request | |
750 | by Scott Otterson. | |
751 | ||
752 | *** Implement pretty display of entities, sub-, and superscripts. | |
753 | :PROPERTIES: | |
754 | :OrgVersion: 7.01 | |
755 | :END: | |
756 | ||
757 | The command =C-c C-x \= toggles the display of Org's special entities | |
758 | like =\alpha= as pretty unicode characters. Also, sub and superscripts | |
759 | are displayed in a pretty way (raised/lower display, in a smaller | |
760 | font). If you want to exclude sub- and superscripts, see the variable | |
761 | =org-pretty-entities-include-sub-superscripts=. | |
762 | ||
763 | Thanks to Eric Schulte and Ulf Stegeman for making this possible. | |
764 | ||
765 | *** New faces for title, date, author and email address lines | |
766 | :PROPERTIES: | |
767 | :OrgVersion: 6.35 | |
768 | :END: | |
769 | ||
770 | The keywords in these lines are now dimmed out, and the title is | |
771 | displayed in a larger font, and a special font is also used for author, | |
772 | date, and email information. This is implemented by the following new | |
773 | faces: | |
774 | ||
775 | =org-document-title= | |
776 | =org-document-info= | |
777 | =org-document-info-keyword= | |
778 | ||
779 | In addition, the variable =org-hidden-keywords= can be used to make the | |
780 | corresponding keywords disappear. | |
781 | ||
782 | Thanks to Dan Davison for this feature. | |
783 | ||
784 | *** Simpler way to specify faces for tags and todo keywords | |
785 | :PROPERTIES: | |
786 | :OrgVersion: 6.35 | |
787 | :END: | |
788 | ||
789 | The variables =org-todo-keyword-faces=, =org-tag-faces=, and | |
790 | =org-priority-faces= now accept simple color names as specifications. | |
791 | The colors will be used as either foreground or background color for | |
792 | the corresponding keyword. See also the variable | |
793 | =org-faces-easy-properties=, which governs which face property is | |
794 | affected by this setting. | |
795 | ||
796 | This is really a great simplification for setting keyword faces. The | |
797 | change is based on an idea and patch by Ryan Thompson. | |
798 | ||
799 | *** <N> in tables now means fixed width, not maximum width | |
800 | :PROPERTIES: | |
801 | :OrgVersion: 6.35 | |
802 | :END: | |
803 | ||
804 | Requested by Michael Brand. | |
805 | ||
806 | *** Better level cycling function | |
807 | :PROPERTIES: | |
808 | :OrgVersion: 6.35 | |
809 | :END: | |
810 | ||
811 | =TAB= in an empty headline cycles the level of that headline through | |
812 | likely states. Ryan Thompson implemented an improved version of this | |
813 | function, which does not depend upon when exactly this command is used. | |
814 | Thanks to Ryan for this improvement. | |
815 | ||
816 | *** Adaptive filling | |
817 | :PROPERTIES: | |
818 | :OrgVersion: 6.35 | |
819 | :END: | |
820 | ||
821 | For paragraph text, =org-adaptive-fill-function= did not handle the | |
822 | base case of regular text which needed to be filled. This is now | |
823 | fixed. Among other things, it allows email-style ">" comments to be | |
824 | filled correctly. | |
825 | ||
826 | Thanks to Dan Hackney for this patch. | |
827 | ||
828 | *** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el) | |
829 | :PROPERTIES: | |
830 | :OrgVersion: 6.35 | |
831 | :END: | |
832 | ||
833 | Thanks to Richard Riley for triggering this change. | |
834 | ||
835 | *** Better automatic letter selection for TODO keywords | |
836 | :PROPERTIES: | |
837 | :OrgVersion: 6.35 | |
838 | :END: | |
839 | ||
840 | When all first letters of keywords have been used, Org now assigns more | |
841 | meaningful characters based on the keywords. | |
842 | ||
843 | Thanks to Mikael Fornius for this patch. | |
844 | ||
845 | ** Clocking | |
846 | ||
847 | *** Clock: Allow synchronous update of timestamps in CLOCK log | |
848 | :PROPERTIES: | |
849 | :OrgVersion: 7.7 | |
850 | :END: | |
851 | ||
852 | Using =S-M-<up/down>= on CLOCK log timestamps will increase/decrease | |
853 | the two timestamps on this line so that duration will keep the same. | |
854 | Note that duration can still be slightly modified in case a timestamp | |
855 | needs some rounding. | |
856 | ||
857 | Thanks to Rainer Stengele for this idea. | |
858 | ||
859 | *** Localized clock tables | |
860 | :PROPERTIES: | |
861 | :OrgVersion: 7.5 | |
862 | :END: | |
863 | ||
864 | Clock tables now support a new new =:lang= parameter, allowing the user | |
865 | to customize the localization of the table headers. See the variable | |
866 | =org-clock-clocktable-language-setup= which controls available | |
867 | translated strings. | |
868 | ||
869 | *** Show clock overruns in mode line | |
870 | :PROPERTIES: | |
871 | :OrgVersion: 6.35 | |
872 | :END: | |
873 | ||
874 | When clocking an item with a planned effort, overrunning the planned | |
875 | time is now made visible in the mode line, for example using the new | |
876 | face =org-mode-line-clock-overrun=, or by adding an extra string given | |
877 | by =org-task-overrun-text=. | |
878 | ||
879 | Thanks to Richard Riley for a patch to this effect. | |
880 | ||
881 | *** Clock reports can now include the running, incomplete clock | |
882 | :PROPERTIES: | |
883 | :OrgVersion: 6.35 | |
884 | :END: | |
885 | ||
886 | If you have a clock running, and the entry being clocked falls into the | |
887 | scope when creating a clock table, the time so far spent can be added | |
888 | to the total. This behavior depends on the setting of | |
889 | =org-clock-report-include-clocking-task=. The default is =nil=. | |
890 | ||
891 | Thanks to Bernt Hansen for this useful addition. | |
892 | ||
893 | ** Misc | |
894 | ||
895 | *** Improvements with inline tasks and indentation | |
896 | :PROPERTIES: | |
897 | :OrgVersion: 7.4 | |
898 | :END: | |
899 | ||
900 | There is now a configurable way on how to export inline tasks. See the | |
901 | new variable =org-inlinetask-export-templates=. | |
902 | ||
903 | Thanks to Nicolas Goaziou for coding these changes. | |
904 | ||
905 | *** A property value of "nil" now means to unset a property | |
906 | :PROPERTIES: | |
907 | :OrgVersion: 7.01 | |
908 | :END: | |
909 | ||
910 | This can be useful in particular with property inheritance, if some | |
911 | upper level has the property, and some grandchild of it would like to | |
912 | have the default settings (i.e. not overruled by a property) back. | |
913 | ||
914 | Thanks to Robert Goldman and Bernt Hansen for suggesting this change. | |
915 | ||
916 | *** New helper functions in org-table.el | |
917 | :PROPERTIES: | |
918 | :OrgVersion: 6.35 | |
919 | :END: | |
920 | ||
921 | There are new functions to access and write to a specific table field. | |
922 | This is for hackers, and maybe for the org-babel people. | |
923 | ||
924 | #+begin_example | |
925 | org-table-get | |
926 | org-table-put | |
927 | org-table-current-line | |
928 | org-table-goto-line | |
929 | #+end_example | |
930 | ||
931 | *** Archiving: Allow to reverse order in target node | |
932 | :PROPERTIES: | |
933 | :OrgVersion: 6.35 | |
934 | :END: | |
935 | ||
936 | The new option =org-archive-reversed-order= allows to have archived | |
937 | entries inserted in a last-on-top fashion in the target node. | |
938 | ||
939 | This was requested by Tom. | |
940 | ||
941 | *** Org-reveal: Double prefix arg shows the entire subtree of the parent | |
942 | :PROPERTIES: | |
943 | :OrgVersion: 6.35 | |
944 | :END: | |
945 | ||
946 | This can help to get out of an inconsistent state produced for example | |
947 | by viewing from the agenda. | |
948 | ||
949 | This was a request by Matt Lundin. | |
950 | * License | |
951 | ||
952 | This file is part of GNU Emacs. | |
953 | ||
954 | GNU Emacs is free software: you can redistribute it and/or modify | |
955 | it under the terms of the GNU General Public License as published by | |
956 | the Free Software Foundation, either version 3 of the License, or | |
957 | (at your option) any later version. | |
958 | ||
959 | GNU Emacs is distributed in the hope that it will be useful, | |
960 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
961 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
962 | GNU General Public License for more details. | |
963 | ||
964 | You should have received a copy of the GNU General Public License | |
965 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |