etc/ORG-NEWS: New file documenting changes between Org 6.34 and current one.
[bpt/emacs.git] / etc / ORG-NEWS
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/>.