diff options
| author | Yuuki Harano | 2020-12-21 01:53:07 +0900 |
|---|---|---|
| committer | Yuuki Harano | 2020-12-21 01:53:07 +0900 |
| commit | 565d8f57d349c19d9bbb5d5d5fdacf3c70b85d42 (patch) | |
| tree | 5a25406b9f4ff091cb6856e857d2857bb3e631e4 /etc | |
| parent | a44cd7c88121bb0e04bdf13d73e15f085cf3b085 (diff) | |
| parent | 87b82a1969edf80d3bd4781454ec9fc968773a6d (diff) | |
| download | emacs-565d8f57d349c19d9bbb5d5d5fdacf3c70b85d42.tar.gz emacs-565d8f57d349c19d9bbb5d5d5fdacf3c70b85d42.zip | |
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs into feature/pgtk
Diffstat (limited to 'etc')
| -rw-r--r-- | etc/NEWS | 76 | ||||
| -rw-r--r-- | etc/ORG-NEWS | 593 | ||||
| -rw-r--r-- | etc/TODO | 36 | ||||
| -rw-r--r-- | etc/emacs.service | 6 | ||||
| -rw-r--r-- | etc/refcards/orgcard.tex | 11 |
5 files changed, 671 insertions, 51 deletions
| @@ -89,7 +89,7 @@ useful on systems such as FreeBSD which ships only with "etc/termcap". | |||
| 89 | This is controlled by the new variable 'scroll-minibuffer-conservatively'. | 89 | This is controlled by the new variable 'scroll-minibuffer-conservatively'. |
| 90 | 90 | ||
| 91 | In addition, there is a new variable | 91 | In addition, there is a new variable |
| 92 | `redisplay-adhoc-scroll-in-resize-mini-windows` to disable the | 92 | 'redisplay-adhoc-scroll-in-resize-mini-windows' to disable the |
| 93 | ad-hoc auto-scrolling when resizing minibuffer windows. It has been | 93 | ad-hoc auto-scrolling when resizing minibuffer windows. It has been |
| 94 | found that its heuristic can be counter productive in some corner | 94 | found that its heuristic can be counter productive in some corner |
| 95 | cases, tho the cure may be worse than the disease. This said, the | 95 | cases, tho the cure may be worse than the disease. This said, the |
| @@ -258,6 +258,10 @@ buffer to be able to move point to the inaccessible portion. | |||
| 258 | 'goto-line-relative' is bound to 'C-x n g'. | 258 | 'goto-line-relative' is bound to 'C-x n g'. |
| 259 | 259 | ||
| 260 | +++ | 260 | +++ |
| 261 | ** When called interactively, 'goto-char' now offers the number at | ||
| 262 | point as default. | ||
| 263 | |||
| 264 | +++ | ||
| 261 | ** When 'suggest-key-bindings' is non-nil, the completion list of 'M-x' | 265 | ** When 'suggest-key-bindings' is non-nil, the completion list of 'M-x' |
| 262 | shows equivalent key bindings for all commands that have them. | 266 | shows equivalent key bindings for all commands that have them. |
| 263 | 267 | ||
| @@ -299,8 +303,8 @@ the buffer cycles the whole buffer between "only top-level headings", | |||
| 299 | 303 | ||
| 300 | * Changes in Specialized Modes and Packages in Emacs 28.1 | 304 | * Changes in Specialized Modes and Packages in Emacs 28.1 |
| 301 | 305 | ||
| 302 | ** Loading dunnet.el in batch mode doesn't start the game any more | 306 | ** Loading dunnet.el in batch mode doesn't start the game any more. |
| 303 | Instead you need to do 'emacs -f dun-batch' to start the game in | 307 | Instead you need to do "emacs -f dun-batch" to start the game in |
| 304 | batch mode. | 308 | batch mode. |
| 305 | 309 | ||
| 306 | ** Emacs Server | 310 | ** Emacs Server |
| @@ -519,21 +523,20 @@ tags to be considered as well. | |||
| 519 | 523 | ||
| 520 | +++ | 524 | +++ |
| 521 | *** New user option 'gnus-registry-register-all'. | 525 | *** New user option 'gnus-registry-register-all'. |
| 522 | |||
| 523 | If non-nil (the default), create registry entries for all messages. | 526 | If non-nil (the default), create registry entries for all messages. |
| 524 | If nil, don't automatically create entries, they must be created | 527 | If nil, don't automatically create entries, they must be created |
| 525 | manually. | 528 | manually. |
| 526 | 529 | ||
| 527 | +++ | 530 | +++ |
| 528 | *** New user options to customise the summary line specs %[ and %]. | 531 | *** New user options to customise the summary line specs "%[" and "%]". |
| 529 | Four new options introduced in customisation group | 532 | Four new options introduced in customisation group |
| 530 | 'gnus-summary-format'. These are 'gnus-sum-opening-bracket', | 533 | 'gnus-summary-format'. These are 'gnus-sum-opening-bracket', |
| 531 | 'gnus-sum-closing-bracket', 'gnus-sum-opening-bracket-adopted', and | 534 | 'gnus-sum-closing-bracket', 'gnus-sum-opening-bracket-adopted', and |
| 532 | 'gnus-sum-closing-bracket-adopted'. Their default values are '[', ']', | 535 | 'gnus-sum-closing-bracket-adopted'. Their default values are "[", "]", |
| 533 | '<', '>' respectively. These variables control the appearance of '%[' | 536 | "<", ">" respectively. These options control the appearance of "%[" |
| 534 | and '%]' specs in the summary line format. '%[' will normally display | 537 | and "%]" specs in the summary line format. "%[" will normally display |
| 535 | the value of 'gnus-sum-opening-bracket', but can also be | 538 | the value of 'gnus-sum-opening-bracket', but can also be |
| 536 | 'gnus-sum-opening-bracket-adopted' for the adopted articles. '%]' will | 539 | 'gnus-sum-opening-bracket-adopted' for the adopted articles. "%]" will |
| 537 | normally display the value of 'gnus-sum-closing-bracket', but can also | 540 | normally display the value of 'gnus-sum-closing-bracket', but can also |
| 538 | be 'gnus-sum-closing-bracket-adopted' for the adopted articles. | 541 | be 'gnus-sum-closing-bracket-adopted' for the adopted articles. |
| 539 | 542 | ||
| @@ -1126,13 +1129,13 @@ If 'shr-width' is non-nil, it overrides this variable. | |||
| 1126 | ** Images | 1129 | ** Images |
| 1127 | 1130 | ||
| 1128 | --- | 1131 | --- |
| 1129 | ** Can explicitly specify base_uri for svg images. | 1132 | *** You can explicitly specify base_uri for svg images. |
| 1130 | ':base-uri' image property can be used to explicitly specify base_uri | 1133 | ':base-uri' image property can be used to explicitly specify base_uri |
| 1131 | for embedded images into svg. ':base-uri' is supported for both file | 1134 | for embedded images into svg. ':base-uri' is supported for both file |
| 1132 | and data svg images. | 1135 | and data svg images. |
| 1133 | 1136 | ||
| 1134 | +++ | 1137 | +++ |
| 1135 | ** 'svg-embed-base-uri-image' added to embed images | 1138 | *** 'svg-embed-base-uri-image' added to embed images. |
| 1136 | 'svg-embed-base-uri-image' can be used to embed images located | 1139 | 'svg-embed-base-uri-image' can be used to embed images located |
| 1137 | relatively to 'file-name-directory' of the ':base-uri' svg image property. | 1140 | relatively to 'file-name-directory' of the ':base-uri' svg image property. |
| 1138 | This works much faster then 'svg-embed'. | 1141 | This works much faster then 'svg-embed'. |
| @@ -1252,8 +1255,8 @@ project's root directory, respectively. | |||
| 1252 | So typing 'C-u RET' in the "*xref*" buffer quits its window | 1255 | So typing 'C-u RET' in the "*xref*" buffer quits its window |
| 1253 | before navigating to the selected location. | 1256 | before navigating to the selected location. |
| 1254 | 1257 | ||
| 1255 | *** New options xref-search-program and xref-search-program-alist. | 1258 | *** New user options 'xref-search-program' and 'xref-search-program-alist'. |
| 1256 | So far Grep and ripgrep are supported. ripgrep seems to offer better | 1259 | So far 'grep' and 'ripgrep' are supported. 'ripgrep' seems to offer better |
| 1257 | performance in certain cases, in particular for case-insensitive | 1260 | performance in certain cases, in particular for case-insensitive |
| 1258 | searches. | 1261 | searches. |
| 1259 | 1262 | ||
| @@ -1438,6 +1441,11 @@ that makes it a valid button. | |||
| 1438 | ** Miscellaneous | 1441 | ** Miscellaneous |
| 1439 | 1442 | ||
| 1440 | +++ | 1443 | +++ |
| 1444 | *** New variable 'current-minibuffer-command'. | ||
| 1445 | This is like 'this-command', but it is bound recursively when entering | ||
| 1446 | the minibuffer. | ||
| 1447 | |||
| 1448 | +++ | ||
| 1441 | *** New function 'object-intervals'. | 1449 | *** New function 'object-intervals'. |
| 1442 | This function returns a copy of the list of intervals (i.e., text | 1450 | This function returns a copy of the list of intervals (i.e., text |
| 1443 | properties) in the object in question (which must either be a string | 1451 | properties) in the object in question (which must either be a string |
| @@ -1473,6 +1481,10 @@ completions with more information in completion prefix and suffix. | |||
| 1473 | This new option allows the user to customize how case is converted | 1481 | This new option allows the user to customize how case is converted |
| 1474 | when unifying entries. | 1482 | when unifying entries. |
| 1475 | 1483 | ||
| 1484 | --- | ||
| 1485 | *** The user option `bibtex-maintain-sorted-entries' now permits | ||
| 1486 | user-defined sorting schemes. | ||
| 1487 | |||
| 1476 | +++ | 1488 | +++ |
| 1477 | *** 'format-seconds' can now be used for sub-second times. | 1489 | *** 'format-seconds' can now be used for sub-second times. |
| 1478 | The new optional "," parameter has been added, and | 1490 | The new optional "," parameter has been added, and |
| @@ -1553,12 +1565,6 @@ both modes are on). | |||
| 1553 | This works like 'report-emacs-bug', but is more geared towards sending | 1565 | This works like 'report-emacs-bug', but is more geared towards sending |
| 1554 | patches to the Emacs issue tracker. | 1566 | patches to the Emacs issue tracker. |
| 1555 | 1567 | ||
| 1556 | --- | ||
| 1557 | *** 'icomplete-show-matches-on-no-input' behavior change. | ||
| 1558 | Previously, choosing a different completion with commands like 'C-.' | ||
| 1559 | and then hitting 'RET' would choose the default completion. Doing | ||
| 1560 | this will now choose the completion under point. | ||
| 1561 | |||
| 1562 | +++ | 1568 | +++ |
| 1563 | *** The user can now customize how "default" values are prompted for. | 1569 | *** The user can now customize how "default" values are prompted for. |
| 1564 | The new utility function 'format-prompt' has been added which uses the | 1570 | The new utility function 'format-prompt' has been added which uses the |
| @@ -1609,7 +1615,9 @@ horizontally and vertically, respectively. | |||
| 1609 | *** Change in meaning of 'icomplete-show-matches-on-no-input'. | 1615 | *** Change in meaning of 'icomplete-show-matches-on-no-input'. |
| 1610 | Previously, choosing a different completion with commands like 'C-.' | 1616 | Previously, choosing a different completion with commands like 'C-.' |
| 1611 | and then hitting 'RET' would choose the default completion. Doing this | 1617 | and then hitting 'RET' would choose the default completion. Doing this |
| 1612 | will now choose the completion under point instead. | 1618 | will now choose the completion under point instead. Also when this option |
| 1619 | is nil, completions are not shown when the minibuffer reads a file name | ||
| 1620 | with initial input as the default directory. | ||
| 1613 | 1621 | ||
| 1614 | --- | 1622 | --- |
| 1615 | *** The width of the buffer-name column in 'list-buffers' is now dynamic. | 1623 | *** The width of the buffer-name column in 'list-buffers' is now dynamic. |
| @@ -1757,14 +1765,12 @@ used instead. | |||
| 1757 | * New Modes and Packages in Emacs 28.1 | 1765 | * New Modes and Packages in Emacs 28.1 |
| 1758 | 1766 | ||
| 1759 | ** Lisp Data mode | 1767 | ** Lisp Data mode |
| 1760 | |||
| 1761 | The new command 'lisp-data-mode' enables a major mode for buffers | 1768 | The new command 'lisp-data-mode' enables a major mode for buffers |
| 1762 | composed of Lisp symbolic expressions that do not form a computer | 1769 | composed of Lisp symbolic expressions that do not form a computer |
| 1763 | program. The ".dir-locals.el" file is automatically set to use this | 1770 | program. The ".dir-locals.el" file is automatically set to use this |
| 1764 | mode, as are other data files produced by Emacs. | 1771 | mode, as are other data files produced by Emacs. |
| 1765 | 1772 | ||
| 1766 | ** hierarchy.el | 1773 | ** hierarchy.el |
| 1767 | |||
| 1768 | It's a library to create, query, navigate and display hierarchy structures. | 1774 | It's a library to create, query, navigate and display hierarchy structures. |
| 1769 | 1775 | ||
| 1770 | ** New themes 'modus-vivendi' and 'modus-operandi'. | 1776 | ** New themes 'modus-vivendi' and 'modus-operandi'. |
| @@ -1774,6 +1780,14 @@ using 'M-x customize-themes' or 'load-theme' from your init file. | |||
| 1774 | Consult the Modus Themes Info manual for more information on the user | 1780 | Consult the Modus Themes Info manual for more information on the user |
| 1775 | options they provide. | 1781 | options they provide. |
| 1776 | 1782 | ||
| 1783 | ** Dictionary mode | ||
| 1784 | This is a mode for searching a RFC 2229 dictionary server. | ||
| 1785 | 'dictionary' opens a buffer for starting operations. | ||
| 1786 | 'dictionary-search' performs a lookup for a word. It also supports a | ||
| 1787 | 'dictionary-tooltip-mode' which performs a lookup of the word under | ||
| 1788 | the mouse in 'dictionary-tooltip-dictionary' (which must be customized | ||
| 1789 | first). | ||
| 1790 | |||
| 1777 | 1791 | ||
| 1778 | * Incompatible Editing Changes in Emacs 28.1 | 1792 | * Incompatible Editing Changes in Emacs 28.1 |
| 1779 | 1793 | ||
| @@ -1924,7 +1938,7 @@ ledit.el, lmenu.el, lucid.el and old-whitespace.el. | |||
| 1924 | 1938 | ||
| 1925 | * Lisp Changes in Emacs 28.1 | 1939 | * Lisp Changes in Emacs 28.1 |
| 1926 | 1940 | ||
| 1927 | ** New function `garbage-collect-maybe` to trigger GC early | 1941 | ** New function 'garbage-collect-maybe' to trigger GC early. |
| 1928 | 1942 | ||
| 1929 | --- | 1943 | --- |
| 1930 | ** 'defvar' detects the error of defining a variable currently lexically bound. | 1944 | ** 'defvar' detects the error of defining a variable currently lexically bound. |
| @@ -2149,6 +2163,20 @@ and 'play-sound-file'. | |||
| 2149 | If this variable is non-nil, character syntax is used for printing | 2163 | If this variable is non-nil, character syntax is used for printing |
| 2150 | numbers when this makes sense, such as '?A' for 65. | 2164 | numbers when this makes sense, such as '?A' for 65. |
| 2151 | 2165 | ||
| 2166 | ** New error 'remote-file-error', a subcategory of 'file-error'. | ||
| 2167 | It is signaled if a remote file operation fails due to internal | ||
| 2168 | reasons, and could block Emacs. It does not replace 'file-error' | ||
| 2169 | signals for the usual cases. Timers, process filters and process | ||
| 2170 | functions, which run remote file operations, shall protect themselves | ||
| 2171 | against this error. | ||
| 2172 | |||
| 2173 | If such an error occurs, please report this as bug via 'M-x report-emacs-bug'. | ||
| 2174 | Until it is solved you could ignore such errors by performing | ||
| 2175 | |||
| 2176 | (setq debug-ignored-errors (cons 'remote-file-error debug-ignored-errors)) | ||
| 2177 | |||
| 2178 | ** The error 'ftp-error' belongs also to category 'remote-file-error'. | ||
| 2179 | |||
| 2152 | 2180 | ||
| 2153 | * Changes in Emacs 28.1 on Non-Free Operating Systems | 2181 | * Changes in Emacs 28.1 on Non-Free Operating Systems |
| 2154 | 2182 | ||
diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS index ce08496b20b..0c094411ab0 100644 --- a/etc/ORG-NEWS +++ b/etc/ORG-NEWS | |||
| @@ -10,6 +10,546 @@ See the end of the file for license conditions. | |||
| 10 | 10 | ||
| 11 | Please send Org bug reports to mailto:emacs-orgmode@gnu.org. | 11 | Please send Org bug reports to mailto:emacs-orgmode@gnu.org. |
| 12 | 12 | ||
| 13 | * Version 9.4 | ||
| 14 | ** Incompatible changes | ||
| 15 | *** Possibly broken internal file links: please check and fix | ||
| 16 | |||
| 17 | A bug has been affecting internal links to headlines, like | ||
| 18 | |||
| 19 | : [[*Headline][A link to a headline]] | ||
| 20 | |||
| 21 | Storing a link to a headline may have been broken in your setup and | ||
| 22 | those links may appear as | ||
| 23 | |||
| 24 | : [[*TODO Headline][A link to a headline]] | ||
| 25 | |||
| 26 | Following the link above will result in an error: the TODO keyword | ||
| 27 | should not be part of internal file links. | ||
| 28 | |||
| 29 | You can use the following command to fix links in an Org buffer: | ||
| 30 | |||
| 31 | #+begin_src emacs-lisp | ||
| 32 | (defun org-fix-links () | ||
| 33 | "Fix ill-formatted internal links. | ||
| 34 | E.g. replace [[*TODO Headline][headline]] by [[*Headline][headline]]. | ||
| 35 | Go through the buffer and ask for the replacement." | ||
| 36 | (interactive) | ||
| 37 | (visible-mode 1) | ||
| 38 | (save-excursion | ||
| 39 | (goto-char (point-min)) | ||
| 40 | (let ((regexp (format "\\[\\[\\*%s\\s-+" | ||
| 41 | (regexp-opt org-todo-keywords-1 t)))) | ||
| 42 | (while (re-search-forward regexp nil t) | ||
| 43 | (when (and (save-excursion | ||
| 44 | (goto-char (match-beginning 0)) | ||
| 45 | (looking-at-p org-link-bracket-re)) | ||
| 46 | (y-or-n-p "Fix link (remove TODO keyword)? ")) | ||
| 47 | (replace-match "[[*"))))) | ||
| 48 | (visible-mode -1)) | ||
| 49 | #+end_src | ||
| 50 | |||
| 51 | *** Calling conventions changes when opening or exporting custom links | ||
| 52 | |||
| 53 | This changes affects export back-ends, and libraries providing new | ||
| 54 | link types. | ||
| 55 | |||
| 56 | Function used in ~:follow~ link parameter is required to accept a | ||
| 57 | second argument. Likewise, function used in ~:export~ parameter needs | ||
| 58 | to accept a fourth argument. See ~org-link-set-parameters~ for | ||
| 59 | details. | ||
| 60 | |||
| 61 | Eventually, the function ~org-export-custom-protocol-maybe~ is now | ||
| 62 | called with a fourth argument. Even though the 3-arguments definition | ||
| 63 | is still supported, at least for now, we encourage back-end developers | ||
| 64 | to switch to the new signature. | ||
| 65 | |||
| 66 | *** Python session return values must be top-level expression statements | ||
| 67 | |||
| 68 | Python blocks with ~:session :results value~ header arguments now only | ||
| 69 | return a value if the last line is a top-level expression statement. | ||
| 70 | Also, when a None value is returned, "None" will be printed under | ||
| 71 | "#+RESULTS:", as it already did with ~:results value~ for non-session | ||
| 72 | blocks. | ||
| 73 | |||
| 74 | *** In HTML export, change on how outline-container-* is set | ||
| 75 | |||
| 76 | When the headline has a =CUSTOM_ID=, use this custom id to build the | ||
| 77 | div id. For example, if you have =:CUSTOM_ID: my-headline= then the | ||
| 78 | resulting <div> will be ~<div id="outline-container-my-headline">~. | ||
| 79 | |||
| 80 | You may want to check whether your HTML files are rendered differently | ||
| 81 | after this change. | ||
| 82 | |||
| 83 | *** New keybinding =<C-c C-TAB>= for ~org-force-cycle-archived~ | ||
| 84 | |||
| 85 | ~org-force-cycle-archived~ used to be associated with =<C-TAB>= but | ||
| 86 | this keybinding is used in Emacs for navigating tabs in Emacs. The | ||
| 87 | new keybinding is =<C-c C-TAB>=. | ||
| 88 | |||
| 89 | ** New default settings for some options | ||
| 90 | |||
| 91 | These options now default to =t=: | ||
| 92 | |||
| 93 | - ~org-loop-over-headlines-in-active-region~ | ||
| 94 | - ~org-fontify-done-headline~ | ||
| 95 | - ~org-src-tab-acts-natively~ | ||
| 96 | |||
| 97 | You may want to read the docstrings of these options to understand the | ||
| 98 | consequences of this change. | ||
| 99 | |||
| 100 | Also, ~org-startup-folded~ now defaults to ~showeverything~. | ||
| 101 | |||
| 102 | ** New features | ||
| 103 | |||
| 104 | *** Looping agenda commands over headlines | ||
| 105 | |||
| 106 | ~org-agenda-loop-over-headlines-in-active-region~ allows you to loop | ||
| 107 | agenda commands over the active region. | ||
| 108 | |||
| 109 | When set to =t= (the default), loop over all headlines. When set to | ||
| 110 | ='start-level=, loop over headlines with the same level as the first | ||
| 111 | headline in the region. When set to a string, loop over lines | ||
| 112 | matching this regular expression. | ||
| 113 | |||
| 114 | *** New minor mode ~org-table-header-line-mode~ | ||
| 115 | |||
| 116 | Turn on the display of the first data row of the table at point in the | ||
| 117 | window header line when this first row is not visible anymore in the | ||
| 118 | buffer. | ||
| 119 | |||
| 120 | You can activate this minor mode by default by setting the option | ||
| 121 | ~org-table-header-line-p~ to =t=. You can also change the face for | ||
| 122 | the header line by customizing the ~org-table-header~ face. | ||
| 123 | |||
| 124 | *** New minor mode ~org-list-checkbox-radio-mode~ | ||
| 125 | |||
| 126 | When this minor mode is on, checkboxes behave as radio buttons: if a | ||
| 127 | checkbox is turned on, other checkboxes at the same level are turned | ||
| 128 | off. | ||
| 129 | |||
| 130 | If you want to occasionally toggle a checkbox as a radio button | ||
| 131 | without turning this minor mode on, you can use =<C-c C-x C-r>= to | ||
| 132 | call ~org-toggle-radio-button~. | ||
| 133 | |||
| 134 | You can also add =#+ATTR_ORG: :radio t= right before the list to tell | ||
| 135 | Org to use radio buttons for this list only. | ||
| 136 | |||
| 137 | *** New allowed value for ~org-adapt-indentation~ | ||
| 138 | |||
| 139 | ~org-adapt-indentation~ now accepts a new value, ='headline-data=. | ||
| 140 | |||
| 141 | When set to this value, Org will only adapt indentation of headline | ||
| 142 | data lines, such as planning/clock lines and property/logbook drawers. | ||
| 143 | Also, with this setting, =org-indent-mode= will keep these data lines | ||
| 144 | correctly aligned with the headline above. | ||
| 145 | |||
| 146 | *** Numeric priorities are now allowed (up to 65) | ||
| 147 | |||
| 148 | You can now set ~org-priority-highest/lowest/default~ to integers to | ||
| 149 | use numeric priorities globally or set, for example | ||
| 150 | |||
| 151 | #+PRIORITIES: 1 10 5 | ||
| 152 | |||
| 153 | to define a buffer-local range and default for priorities. Priority | ||
| 154 | commands should work as usual. You cannot use numbers superior to 64 | ||
| 155 | for numeric priorities, as it would clash with priorities like [#A] | ||
| 156 | where the "A" is internally converted to its numeric value of 65. | ||
| 157 | |||
| 158 | *** Property drawers allowed before first headline | ||
| 159 | |||
| 160 | Property drawers are now allowed before the first headline. | ||
| 161 | |||
| 162 | Org mode is moving more towards making things before the first | ||
| 163 | headline behave just as if it was at outline level 0. Inheritance for | ||
| 164 | properties will work also for this level. In other words: defining | ||
| 165 | things in a property drawer before the first headline will make them | ||
| 166 | "inheritable" for all headlines. | ||
| 167 | |||
| 168 | *** Refinement in window behavior on exiting Org source buffer | ||
| 169 | |||
| 170 | After editing a source block, Org will restore the window layout when | ||
| 171 | ~org-src-window-setup~ is set to a value that modifies the layout. | ||
| 172 | |||
| 173 | *** Display remote inline images | ||
| 174 | |||
| 175 | Org now knows how to display remote images inline. | ||
| 176 | |||
| 177 | Whether the images are actually displayed is controlled by the new | ||
| 178 | option ~org-display-remote-inline-images~. | ||
| 179 | |||
| 180 | *** New option to resolve open clock at a provided time | ||
| 181 | |||
| 182 | ~org-resolve-clocks~ now has a `t' option, which works just like the | ||
| 183 | `k' option, but the user specifies a time of day, not a number of | ||
| 184 | minutes. | ||
| 185 | |||
| 186 | *** New step value =semimonth= accepted for clock tables | ||
| 187 | |||
| 188 | *** Allow text rescaling in column view | ||
| 189 | |||
| 190 | You can now use =C-x C-+= in column view: the columns face size will | ||
| 191 | increase or decrease, together with the column header size. | ||
| 192 | |||
| 193 | *** New startup option =#+startup: num= | ||
| 194 | |||
| 195 | When this startup option is set, display headings as numerated. | ||
| 196 | |||
| 197 | Use =#+startup: nonum= to turn this off. | ||
| 198 | |||
| 199 | *** New tool for custom links | ||
| 200 | |||
| 201 | Org provides a new tool ~org-link-open-as-file~, useful when defining | ||
| 202 | new link types similar to "file"-type links. See docstring for | ||
| 203 | details. | ||
| 204 | |||
| 205 | *** New optional numeric argument for ~org-return~ | ||
| 206 | |||
| 207 | In situations where ~org-return~ calls ~newline~, multiple newlines | ||
| 208 | can now be inserted with this prefix argument. | ||
| 209 | |||
| 210 | *** New source code block header argument =:file-mode= | ||
| 211 | |||
| 212 | Source code block header argument =:file-mode= can set file | ||
| 213 | permissions if =:file= argument is provided. | ||
| 214 | |||
| 215 | *** =RET= and =C-j= now obey ~electric-indent-mode~ | ||
| 216 | |||
| 217 | Since Emacs 24.4, ~electric-indent-mode~ is enabled by default. In | ||
| 218 | most major modes, this causes =RET= to reindent the current line and | ||
| 219 | indent the new line, and =C-j= to insert a newline without indenting. | ||
| 220 | |||
| 221 | Org mode now obeys this minor mode: when ~electric-indent-mode~ is | ||
| 222 | enabled, and point is neither in a table nor on a timestamp or a link: | ||
| 223 | |||
| 224 | - =RET= (bound to ~org-return~) reindents the current line and indents | ||
| 225 | the new line; | ||
| 226 | - =C-j= (bound to the new command ~org-return-and-maybe-indent~) | ||
| 227 | merely inserts a newline. | ||
| 228 | |||
| 229 | To get the previous behaviour back, disable ~electric-indent-mode~ | ||
| 230 | explicitly: | ||
| 231 | |||
| 232 | #+begin_src emacs-lisp | ||
| 233 | (add-hook 'org-mode-hook (lambda () (electric-indent-local-mode -1))) | ||
| 234 | #+end_src | ||
| 235 | |||
| 236 | Alternatively, if you wish to keep =RET= as the "smart-return" key, | ||
| 237 | but dislike Org's default indentation of sections, you may prefer to | ||
| 238 | customize ~org-adapt-indentation~ to either =nil= or ='headline-data=. | ||
| 239 | |||
| 240 | *** =ob-C.el= allows the inclusion of non-system header files | ||
| 241 | |||
| 242 | In C and C++ blocks, ~:includes~ arguments that do not start with a | ||
| 243 | ~<~ character will now be formatted as double-quoted ~#include~ | ||
| 244 | statements. | ||
| 245 | |||
| 246 | *** =ob-clojure.el= supports inf-clojure.el and ClojureScript evaluation | ||
| 247 | |||
| 248 | You can now set ~(setq org-babel-clojure-backend 'inf-clojure)~ and | ||
| 249 | evaluate Clojure source blocks using [[https://github.com/clojure-emacs/inf-clojure][inf-clojure]]. With a header | ||
| 250 | argument like =:alias "alias"= the Clojure REPL will boot with | ||
| 251 | =clojure -Aalias=. Otherwise Clojure will boot with =lein=, =boot= or | ||
| 252 | =tools.deps=, depending on whether the current directory contains a | ||
| 253 | =project.clj=, =build.boot= or =deps.edn=, falling back on | ||
| 254 | ~inf-clojure-generic-cmd~ in case no such file is present. | ||
| 255 | |||
| 256 | Also, when using [[https://github.com/clojure-emacs/cider][cider]], you can now use =#+begin_src clojurescript= to | ||
| 257 | execute ClojureScript code from Org files. Note that this works only | ||
| 258 | if your Org file is associated with a cider session that knows how to | ||
| 259 | run ClojureScript code. A bare =lein repl= session outside of a | ||
| 260 | directory configured for ClojureScript will /not/ work. | ||
| 261 | |||
| 262 | *** =ob-java.el= supports Java command line arguments | ||
| 263 | |||
| 264 | Babel Java blocks recognize header argument =:cmdargs= and pass its | ||
| 265 | value in call to =java=. | ||
| 266 | |||
| 267 | *** =ob-screen.el= now accepts =:screenrc= header argument | ||
| 268 | |||
| 269 | Screen blocks now recognize the =:screenrc= header argument and pass | ||
| 270 | its value to the screen command via the "-c" option. The default | ||
| 271 | remains =/dev/null= (i.e. a clean screen session) | ||
| 272 | |||
| 273 | *** =ob-plantuml=: now supports using PlantUML executable to generate diagrams | ||
| 274 | |||
| 275 | Set =org-plantuml-exec-mode= to ='plantuml= in order to use the | ||
| 276 | executable instead of JAR. When using an executable it is also | ||
| 277 | possible to configure executable location as well as arguments via: | ||
| 278 | =org-plantuml-executable-path= and =org-plantuml-executable-args=. | ||
| 279 | |||
| 280 | ** New commands | ||
| 281 | *** ~org-table-header-line-mode~ | ||
| 282 | |||
| 283 | Turn on a minor mode to display the first data row of the table at | ||
| 284 | point in the header-line when the beginning of the table is invisible. | ||
| 285 | |||
| 286 | *** ~org-agenda-ctrl-c-ctrl-c~ | ||
| 287 | |||
| 288 | Hitting =<C-c C-c>= in an agenda view now calls ~org-agenda-set-tags~. | ||
| 289 | |||
| 290 | *** ~org-hide-entry~ | ||
| 291 | |||
| 292 | This command is the counterpart of ~org-show-entry~. | ||
| 293 | |||
| 294 | *** ~org-columns-toggle-or-columns-quit~ | ||
| 295 | |||
| 296 | =<C-c C-c>= bound to ~org-columns-toggle-or-columns-quit~ replaces the | ||
| 297 | recent ~org-columns-set-tags-or-toggle~. Tag setting is still | ||
| 298 | possible via column view value edit or with =<C-c C-q>=. | ||
| 299 | |||
| 300 | *** ~org-datetree-find-month-create~ | ||
| 301 | |||
| 302 | Find or create a month entry for a date. | ||
| 303 | |||
| 304 | ** New options and settings | ||
| 305 | *** New option ~org-html-prefer-user-labels~ | ||
| 306 | |||
| 307 | When non-nil, use =NAME= affiliated keyword, or raw target values, to | ||
| 308 | generate anchor's ID. Otherwise, consistently use internal naming | ||
| 309 | scheme. | ||
| 310 | |||
| 311 | =CUSTOM_ID= values are still always used, when available. | ||
| 312 | *** New option for using tabs in ~org-agenda-window-setup~ | ||
| 313 | |||
| 314 | Choosing ~other-tab~ for ~org-agenda-window-setup~ will open the | ||
| 315 | agenda view in a new tab. This will work with versions of Emacs since | ||
| 316 | 27.1 when ~tab-bar-mode~ was introduced. | ||
| 317 | |||
| 318 | *** New option ~org-table-header-line-p~ | ||
| 319 | |||
| 320 | Setting this option to =t= will activate ~org-table-header-line-mode~ | ||
| 321 | in org-mode buffers. | ||
| 322 | |||
| 323 | *** New option ~org-startup-numerated~ | ||
| 324 | |||
| 325 | When this option is =t=, Org files will start using ~(org-num-mode 1)~ | ||
| 326 | and headings will be visually numerated. | ||
| 327 | |||
| 328 | You can turn this on/off on a per-file basis with =#+startup: num= or | ||
| 329 | =#+startup: nonum=. | ||
| 330 | |||
| 331 | *** New option ~org-clock-auto-clockout-timer~ | ||
| 332 | |||
| 333 | When this option is set to a number and the user configuration | ||
| 334 | contains =(org-clock-auto-clockout-insinuate)=, Org will clock out the | ||
| 335 | currently clocked in task after that number of seconds of idle time. | ||
| 336 | |||
| 337 | This is useful when you often forget to clock out before being idle | ||
| 338 | and don't want to have to manually set the clocking time to take into | ||
| 339 | account. | ||
| 340 | |||
| 341 | *** New option to group captured datetime entries by month | ||
| 342 | |||
| 343 | A new `:tree-type month' option was added to org-capture-templates to | ||
| 344 | group new datetime entries by month. | ||
| 345 | |||
| 346 | *** New option to show source buffers using "plain" display-buffer | ||
| 347 | |||
| 348 | There is a new option ~plain~ to ~org-src-window-setup~ to show source | ||
| 349 | buffers using ~display-buffer~. This allows users to control how | ||
| 350 | source buffers are displayed by modifying ~display-buffer-alist~ or | ||
| 351 | ~display-buffer-base-action~. | ||
| 352 | |||
| 353 | *** New option ~org-archive-subtree-save-file-p~ | ||
| 354 | |||
| 355 | Archiving a subtree used to always save the target archive buffer. | ||
| 356 | Commit [[https://code.orgmode.org/bzg/org-mode/commit/b186d1d7][b186d1d7]] changed this behavior by always not saving the target | ||
| 357 | buffer, because batch archiving from agenda could take too much time. | ||
| 358 | |||
| 359 | This new option ~org-archive-subtree-save-file-p~ defaults to the | ||
| 360 | value =from-org= so that archiving a subtree will save the target | ||
| 361 | buffer when done from an org-mode buffer, but not from the agenda. | ||
| 362 | You can also set this option to =t= or to =from-agenda=. | ||
| 363 | |||
| 364 | *** New option ~org-show-notification-timeout~ | ||
| 365 | |||
| 366 | This option will add a timeout to notifications. | ||
| 367 | |||
| 368 | *** New option ~org-latex-to-html-convert-command~ | ||
| 369 | |||
| 370 | This new option allows you to convert a LaTeX fragment directly into | ||
| 371 | HTML. | ||
| 372 | |||
| 373 | *** New option ~org-babel-shell-results-defaults-to-output~ | ||
| 374 | |||
| 375 | By default, source code blocks are executed in "functional mode": it | ||
| 376 | means that the results of executing them are the value of their last | ||
| 377 | statement (see [[https://orgmode.org/manual/Results-of-Evaluation.html][the documentation]].) | ||
| 378 | |||
| 379 | The value of a shell script's execution is its exit code. But most | ||
| 380 | users expect the results of executing a shell script to be its output, | ||
| 381 | not its exit code. | ||
| 382 | |||
| 383 | So we introduced this option, that you can set to =nil= if you want | ||
| 384 | to stick using ~:results value~ as the implicit header. | ||
| 385 | |||
| 386 | In all Babel libraries, the absence of a ~:results~ header should | ||
| 387 | produce the same result than setting ~:results value~, unless there is | ||
| 388 | an option to explicitly create an exception. | ||
| 389 | |||
| 390 | See [[https://orgmode.org/list/CA+A2iZaziAfMeGpBqL6qGrzrWEVvLvC0DUw++T4gCF3NGuW-DQ@mail.gmail.com/][this thread]] for more context. | ||
| 391 | |||
| 392 | *** New option in ~org-attach-store-link-p~ | ||
| 393 | |||
| 394 | ~org-attach-store-link-p~ has a new option to store a file link to the | ||
| 395 | attachment. | ||
| 396 | *** New option ~org-fontify-todo-headline~ | ||
| 397 | |||
| 398 | This feature is the same as ~org-fontify-done-headline~, but for TODO | ||
| 399 | headlines instead. This allows you to distinguish TODO headlines from | ||
| 400 | normal headlines. The face can be customized via ~org-headline-todo~. | ||
| 401 | |||
| 402 | *** New default value for ~org-file-apps~ | ||
| 403 | |||
| 404 | The new value uses Emacs as the application for opening directory. | ||
| 405 | |||
| 406 | *** New hook ~org-agenda-filter-hook~ | ||
| 407 | |||
| 408 | Functions in this hook are run after ~org-agenda-filter~ is called. | ||
| 409 | |||
| 410 | ** Removed or renamed functions and variables | ||
| 411 | *** Deprecated ~org-flag-drawer~ function | ||
| 412 | |||
| 413 | Use ~org-hide-drawer-toggle~ instead. | ||
| 414 | |||
| 415 | *** Deprecated ~org-hide-block-toggle-maybe~ function | ||
| 416 | |||
| 417 | Use ~org-hide-block-toggle~ instead. | ||
| 418 | |||
| 419 | *** Deprecated ~org-hide-block-toggle-all~ function | ||
| 420 | |||
| 421 | This function was not used in the code base, and has no clear use | ||
| 422 | either. It has been marked for future removal. Please contact the | ||
| 423 | mailing list if you use this function. | ||
| 424 | |||
| 425 | *** Deprecated ~org-return-indent~ function | ||
| 426 | |||
| 427 | In Elisp code, use ~(org-return t)~ instead. Interactively, =C-j= is | ||
| 428 | now bound to ~org-return-and-maybe-indent~, which indents the new line | ||
| 429 | when ~electric-indent-mode~ is disabled. | ||
| 430 | |||
| 431 | *** Removed ~org-maybe-keyword-time-regexp~ | ||
| 432 | |||
| 433 | The variable was not used in the code base. | ||
| 434 | |||
| 435 | *** Removed ~org-export-special-keywords~ | ||
| 436 | |||
| 437 | The variable was not used in the code base. | ||
| 438 | |||
| 439 | *** Renamed ~org-at-property-block-p~ | ||
| 440 | |||
| 441 | The new name is ~org-at-property-drawer-p~, which is less confusing. | ||
| 442 | |||
| 443 | *** Renamed ~org-columns-set-tags-or-toggle~ | ||
| 444 | |||
| 445 | See [[*~org-columns-toggle-or-columns-quit~]]. | ||
| 446 | |||
| 447 | *** Renamed priority options | ||
| 448 | |||
| 449 | From ~org-lowest-priority~ to ~org-priority-lowest~. | ||
| 450 | From ~org-default-priority~ to ~org-priority-default~. | ||
| 451 | From ~org-highest-priority~ to ~org-priority-highest~. | ||
| 452 | From ~org-enable-priority-commands~ to ~org-priority-enable-commands~. | ||
| 453 | From ~org-show-priority~ to ~org-priority-show~. | ||
| 454 | |||
| 455 | ** Miscellaneous | ||
| 456 | *** =ob-screen.el= now respects screen =:session= name | ||
| 457 | |||
| 458 | Screen babel session are now named based on the =:session= header | ||
| 459 | argument (defaults to ~default~). | ||
| 460 | |||
| 461 | Previously all session names had ~org-babel-session-~ prepended. | ||
| 462 | |||
| 463 | *** Forward/backward paragraph functions in line with the rest of Emacs | ||
| 464 | |||
| 465 | ~org-forward-paragraph~ and ~org-backward-paragraph~, bound to | ||
| 466 | ~<C-UP>~ and ~<C-DOWN>~ functions mimic more closely behaviour of | ||
| 467 | ~forward-paragraph~ and ~backward-paragraph~ functions when | ||
| 468 | available. | ||
| 469 | |||
| 470 | They also accept an optional argument for multiple calls. | ||
| 471 | |||
| 472 | See their docstring for details. | ||
| 473 | *** ~org-table-to-lisp~ no longer checks if point is at a table | ||
| 474 | |||
| 475 | The caller is now responsible for the check. It can use, e.g., | ||
| 476 | ~org-at-table-p~. | ||
| 477 | |||
| 478 | The function is also much more efficient than it used to be, even on | ||
| 479 | very large tables. | ||
| 480 | |||
| 481 | *** New function ~org-collect-keywords~ | ||
| 482 | *** Drawers' folding use an API similar to block's | ||
| 483 | |||
| 484 | Tooling for folding drawers interactively or programmatically is now | ||
| 485 | on par with block folding. In particular, ~org-hide-drawer-toggle~, | ||
| 486 | a new function, is the central place for drawer folding. | ||
| 487 | |||
| 488 | *** Duration can be read and written in compact form | ||
| 489 | |||
| 490 | ~org-duration-to-minutes~ understands =1d3h5min= as a duration, | ||
| 491 | whereas ~org-duration-from-minutes~ can output this compact form if | ||
| 492 | the duration format contains the symbol ~compact~. | ||
| 493 | |||
| 494 | *** C-n, C-p, SPC and DEL in agenda commands dispatch window | ||
| 495 | |||
| 496 | You can now use =<C-n>=, =<C-p>=, =<SPC>= and =<DEL>= key to scroll up | ||
| 497 | and down the agenda and attach dispatch window. | ||
| 498 | |||
| 499 | *** =<C-c C-c>= in agenda calls ~org-agenda-set-tags~ | ||
| 500 | |||
| 501 | Both =<C-c C-q>= and =<C-c C-c>= set the tags of the headline in the | ||
| 502 | Org buffer. Both keybindings are now available from the agenda too. | ||
| 503 | |||
| 504 | *** Allow to use an empty HTML extension | ||
| 505 | |||
| 506 | Using =(setq org-html-extension "")= or setting the HTML extension in | ||
| 507 | any fashion will produce the expected output, with no trailing period | ||
| 508 | to the resulting HTML file. | ||
| 509 | |||
| 510 | *** Handle repeated tasks with =.+= type and hours step | ||
| 511 | |||
| 512 | A task using a =.+= repeater and hours step is repeated starting from | ||
| 513 | now. E.g., | ||
| 514 | |||
| 515 | #+begin_example | ||
| 516 | ,,** TODO Wash my hands | ||
| 517 | DEADLINE: <2019-04-05 08:00 Sun .+1h> | ||
| 518 | Marking this DONE shifts the date to exactly one hour from now. | ||
| 519 | #+end_example | ||
| 520 | |||
| 521 | *** The format of equation reference in HTML export can now be specified | ||
| 522 | |||
| 523 | By default, HTML (via MathJax) and LaTeX export equation references | ||
| 524 | using different commands. LaTeX must use ~\ref{%s}~ because it is used | ||
| 525 | for all labels; however, HTML (via MathJax) uses ~\eqref{%s}~ for | ||
| 526 | equations producing inconsistent output. New option | ||
| 527 | ~org-html-equation-reference-format~ sets the command used in HTML | ||
| 528 | export. | ||
| 529 | |||
| 530 | *** =ob-haskell.el= supports compilation with =:compile= header argument | ||
| 531 | |||
| 532 | By default, Haskell blocks are interpreted. By adding =:compile yes= | ||
| 533 | to a Haskell source block, it will be compiled, executed and the | ||
| 534 | results will be displayed. | ||
| 535 | |||
| 536 | *** Support for ~org-edit-special~ with LaTeX fragments | ||
| 537 | |||
| 538 | Calling ~org-edit-special~ on an inline LaTeX fragment calls a new | ||
| 539 | function, ~org-edit-latex-fragment~. This functions in a comparable | ||
| 540 | manner to editing inline source blocks, bringing up a minibuffer set | ||
| 541 | to LaTeX mode. The math-mode deliminators are read only. | ||
| 542 | |||
| 543 | *** ~org-capture-current-plist~ is now accessible during ~org-capture-mode-hook~ | ||
| 544 | *** New =org-refile.el= file | ||
| 545 | |||
| 546 | Org refile variables and functions have been moved to a new file. | ||
| 547 | |||
| 548 | *** The end of a 7 years old bug | ||
| 549 | |||
| 550 | This bug [[https://lists.gnu.org/archive/html/emacs-orgmode/2013-08/msg00072.html][originally reported]] by Matt Lundin and investigated by Andrew | ||
| 551 | Hyatt has been fixed. Thanks to both of them. | ||
| 552 | |||
| 13 | * Version 9.3 | 553 | * Version 9.3 |
| 14 | 554 | ||
| 15 | ** Incompatible changes | 555 | ** Incompatible changes |
| @@ -19,15 +559,11 @@ Org used to percent-encode sensitive characters in the URI part of the | |||
| 19 | bracket links. | 559 | bracket links. |
| 20 | 560 | ||
| 21 | Now, escaping mechanism uses the usual backslash character, according | 561 | Now, escaping mechanism uses the usual backslash character, according |
| 22 | to the following rules, applied in order: | 562 | to the following rules: |
| 23 | 563 | ||
| 24 | 1. All consecutive =\= characters at the end of the link must be | 564 | 1. All =[= and =]= characters in the URI must be escaped; |
| 25 | escaped; | 565 | 2. Every =\= character preceding either =[= or =]= must be escaped; |
| 26 | 2. Any =]= character at the very end of the link must be escaped; | 566 | 3. Every =\= character at the end of the URI must be escaped. |
| 27 | 3. All consecutive =\= characters preceding =][= or =]]= patterns must | ||
| 28 | be escaped; | ||
| 29 | 4. Any =]= character followed by either =[= or =]= must be escaped; | ||
| 30 | 5. Others =]= and =\= characters need not be escaped. | ||
| 31 | 567 | ||
| 32 | When in doubt, use the function ~org-link-escape~ in order to turn | 568 | When in doubt, use the function ~org-link-escape~ in order to turn |
| 33 | a link string into its properly escaped form. | 569 | a link string into its properly escaped form. |
| @@ -141,7 +677,7 @@ Export ignore done tasks with a deadline when | |||
| 141 | Likewise, scheduled done tasks are also ignored when | 677 | Likewise, scheduled done tasks are also ignored when |
| 142 | ~org-icalendar-use-scheduled~ contains the same symbol. | 678 | ~org-icalendar-use-scheduled~ contains the same symbol. |
| 143 | 679 | ||
| 144 | *** Add split-window-right option for src block edit window placement | 680 | *** Add ~split-window-right~ option for src block edit window placement |
| 145 | 681 | ||
| 146 | Given the increasing popularity of wide screen monitors, splitting | 682 | Given the increasing popularity of wide screen monitors, splitting |
| 147 | horizontally may make more sense than splitting vertically. An | 683 | horizontally may make more sense than splitting vertically. An |
| @@ -364,7 +900,6 @@ the headline to use for making the table of contents. | |||
| 364 | ,* Another section | 900 | ,* Another section |
| 365 | ,#+TOC: headlines 1 :target "#TargetSection" | 901 | ,#+TOC: headlines 1 :target "#TargetSection" |
| 366 | #+end_example | 902 | #+end_example |
| 367 | |||
| 368 | ** New functions | 903 | ** New functions |
| 369 | *** ~org-dynamic-block-insert-dblock~ | 904 | *** ~org-dynamic-block-insert-dblock~ |
| 370 | 905 | ||
| @@ -474,6 +1009,16 @@ I.e. treat the whole file as if it was a subtree. | |||
| 474 | 1009 | ||
| 475 | *** Respect narrowing when agenda command is restricted to buffer | 1010 | *** Respect narrowing when agenda command is restricted to buffer |
| 476 | 1011 | ||
| 1012 | *** ~org-table-insert-column~ inserts the column at point position | ||
| 1013 | |||
| 1014 | Before, the new column was inserted to the right of the column at | ||
| 1015 | point position. | ||
| 1016 | |||
| 1017 | *** Table column deletion now consistent with row deletion | ||
| 1018 | |||
| 1019 | Point stays in the column at deletion, except when deleting the | ||
| 1020 | rightmost column. | ||
| 1021 | |||
| 477 | * Version 9.2 | 1022 | * Version 9.2 |
| 478 | ** Incompatible changes | 1023 | ** Incompatible changes |
| 479 | *** Removal of OrgStruct mode mode and radio lists | 1024 | *** Removal of OrgStruct mode mode and radio lists |
| @@ -484,7 +1029,7 @@ and ~org-list-radio-lists-templates~) are removed from the code base. | |||
| 484 | Note that only radio /lists/ have been removed, not radio tables. | 1029 | Note that only radio /lists/ have been removed, not radio tables. |
| 485 | 1030 | ||
| 486 | If you want to manipulate lists like in Org in other modes, we suggest | 1031 | If you want to manipulate lists like in Org in other modes, we suggest |
| 487 | to use orgalist.el, which you can install from GNU ELPA. | 1032 | to use =orgalist.el=, which you can install from GNU ELPA. |
| 488 | 1033 | ||
| 489 | If you want to use Org folding outside of Org buffers, you can have a | 1034 | If you want to use Org folding outside of Org buffers, you can have a |
| 490 | look at the outshine package in the MELPA repository. | 1035 | look at the outshine package in the MELPA repository. |
| @@ -1276,9 +1821,9 @@ removed from Gnus circa September 2010. | |||
| 1276 | 1821 | ||
| 1277 | *** ~org-agenda-repeating-timestamp-show-all~ is removed. | 1822 | *** ~org-agenda-repeating-timestamp-show-all~ is removed. |
| 1278 | 1823 | ||
| 1279 | For an equivalent to a ~nil~ value, set | 1824 | For an equivalent to a =nil= value, set |
| 1280 | ~org-agenda-show-future-repeats~ to nil and | 1825 | ~org-agenda-show-future-repeats~ to nil and |
| 1281 | ~org-agenda-prefer-last-repeat~ to ~t~. | 1826 | ~org-agenda-prefer-last-repeat~ to =t=. |
| 1282 | 1827 | ||
| 1283 | *** ~org-gnus-nnimap-query-article-no-from-file~ is removed. | 1828 | *** ~org-gnus-nnimap-query-article-no-from-file~ is removed. |
| 1284 | 1829 | ||
| @@ -1296,7 +1841,7 @@ equivalent to the removed format string. | |||
| 1296 | 1841 | ||
| 1297 | *** ~org-enable-table-editor~ is removed. | 1842 | *** ~org-enable-table-editor~ is removed. |
| 1298 | 1843 | ||
| 1299 | Setting it to a ~nil~ value broke some other features (e.g., speed | 1844 | Setting it to a =nil= value broke some other features (e.g., speed |
| 1300 | keys). | 1845 | keys). |
| 1301 | 1846 | ||
| 1302 | *** ~org-export-use-babel~ cannot be set to ~inline-only~ | 1847 | *** ~org-export-use-babel~ cannot be set to ~inline-only~ |
| @@ -1377,16 +1922,20 @@ is now obsolete. | |||
| 1377 | 1922 | ||
| 1378 | Now ~=...=~ markup uses ~@samp{}~ instead of ~@verb{}~. You can use | 1923 | Now ~=...=~ markup uses ~@samp{}~ instead of ~@verb{}~. You can use |
| 1379 | ~@verb{}~ again by customizing the variable. | 1924 | ~@verb{}~ again by customizing the variable. |
| 1925 | |||
| 1380 | *** Texinfo exports example blocks as ~@example~ | 1926 | *** Texinfo exports example blocks as ~@example~ |
| 1381 | *** Texinfo exports inline source blocks as ~@code{}~ | 1927 | *** Texinfo exports inline source blocks as ~@code{}~ |
| 1382 | *** Texinfo default table markup is ~@asis~ | 1928 | *** Texinfo default table markup is ~@asis~ |
| 1929 | |||
| 1383 | It used to be ~@samp~ but ~@asis~ is neutral and, therefore, more | 1930 | It used to be ~@samp~ but ~@asis~ is neutral and, therefore, more |
| 1384 | suitable as a default value. | 1931 | suitable as a default value. |
| 1932 | |||
| 1385 | *** Texinfo default process includes ~--no-split~ option | 1933 | *** Texinfo default process includes ~--no-split~ option |
| 1386 | *** New entities : ~\dollar~ and ~\USD~ | 1934 | *** New entities : ~\dollar~ and ~\USD~ |
| 1387 | *** Support for date style URLs in =org-protocol://open-source= | 1935 | *** Support for date style URLs in =org-protocol://open-source= |
| 1388 | URLs like =https://cool-blog.com/2017/05/20/cool-post/= are | 1936 | |
| 1389 | covered by rewrite rules. | 1937 | URLs like =https://cool-blog.com/2017/05/20/cool-post/= are covered by |
| 1938 | rewrite rules. | ||
| 1390 | 1939 | ||
| 1391 | *** Add (C) =COMMENT= support to ~org-structure-template-alist~ | 1940 | *** Add (C) =COMMENT= support to ~org-structure-template-alist~ |
| 1392 | 1941 | ||
| @@ -1476,7 +2025,7 @@ Moreover, ~:export-block~ keyword used in ~org-export-define-backend~ and | |||
| 1476 | ~org-export-define-derived-backend~ is no longer used and needs to be | 2025 | ~org-export-define-derived-backend~ is no longer used and needs to be |
| 1477 | removed. | 2026 | removed. |
| 1478 | 2027 | ||
| 1479 | *** Footnotes | 2028 | *** Footnotes changes |
| 1480 | 2029 | ||
| 1481 | **** [1]-like constructs are not valid footnotes | 2030 | **** [1]-like constructs are not valid footnotes |
| 1482 | 2031 | ||
| @@ -2216,7 +2765,7 @@ without changing the headline. | |||
| 2216 | 2765 | ||
| 2217 | *** Hierarchies of tags | 2766 | *** Hierarchies of tags |
| 2218 | 2767 | ||
| 2219 | The functionality of nesting tags in hierarchies is added to org-mode. | 2768 | The functionality of nesting tags in hierarchies is added to Org mode. |
| 2220 | This is the generalization of what was previously called "Tag groups" | 2769 | This is the generalization of what was previously called "Tag groups" |
| 2221 | in the manual. That term is now changed to "Tag hierarchy". | 2770 | in the manual. That term is now changed to "Tag hierarchy". |
| 2222 | 2771 | ||
| @@ -4105,7 +4654,7 @@ See https://orgmode.org/elpa/ | |||
| 4105 | 4654 | ||
| 4106 | You can temporarily activate continuous clocking with =C-u C-u | 4655 | You can temporarily activate continuous clocking with =C-u C-u |
| 4107 | C-u M-x= [[doc::org-clock-in][org-clock-in]] =RET= (three universal prefix arguments) | 4656 | C-u M-x= [[doc::org-clock-in][org-clock-in]] =RET= (three universal prefix arguments) |
| 4108 | and =C-u C-u M-x= [[org-clock-in-last][org-clock-in-last]] =RET= (two universal prefix | 4657 | and =C-u C-u M-x= [[doc::org-clock-in-last][org-clock-in-last]] =RET= (two universal prefix |
| 4109 | arguments). | 4658 | arguments). |
| 4110 | 4659 | ||
| 4111 | 4660 | ||
| @@ -4581,7 +5130,7 @@ that Calc formulas can operate on them. | |||
| 4581 | 5130 | ||
| 4582 | The new system has a technically cleaner implementation and more | 5131 | The new system has a technically cleaner implementation and more |
| 4583 | possibilities for capturing different types of data. See | 5132 | possibilities for capturing different types of data. See |
| 4584 | [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's announcement]] for more details. | 5133 | [[https://orgmode.org/list/C46F10DC-DE51-43D4-AFFE-F71E440D1E1F@gmail.com][Carsten's announcement]] for more details. |
| 4585 | 5134 | ||
| 4586 | To switch over to the new system: | 5135 | To switch over to the new system: |
| 4587 | 5136 | ||
| @@ -4712,7 +5261,7 @@ that Calc formulas can operate on them. | |||
| 4712 | 5261 | ||
| 4713 | **** Modified link escaping | 5262 | **** Modified link escaping |
| 4714 | 5263 | ||
| 4715 | David Maus worked on `org-link-escape'. See [[http://article.gmane.org/gmane.emacs.orgmode/37888][his message]]: | 5264 | David Maus worked on `org-link-escape'. See [[https://orgmode.org/list/87k4gysacq.wl%dmaus@ictsoc.de][his message]]: |
| 4716 | 5265 | ||
| 4717 | : Percent escaping is used in Org mode to escape certain characters | 5266 | : Percent escaping is used in Org mode to escape certain characters |
| 4718 | : in links that would either break the parser (e.g. square brackets | 5267 | : in links that would either break the parser (e.g. square brackets |
| @@ -5151,7 +5700,7 @@ that Calc formulas can operate on them. | |||
| 5151 | 5700 | ||
| 5152 | Thanks to Nicolas Goaziou for coding these changes. | 5701 | Thanks to Nicolas Goaziou for coding these changes. |
| 5153 | 5702 | ||
| 5154 | **** A property value of "nil" now means to unset a property | 5703 | **** A property value of =nil= now means to unset a property |
| 5155 | 5704 | ||
| 5156 | This can be useful in particular with property inheritance, if | 5705 | This can be useful in particular with property inheritance, if |
| 5157 | some upper level has the property, and some grandchild of it | 5706 | some upper level has the property, and some grandchild of it |
| @@ -536,6 +536,42 @@ This should go with point, so that motion commands can also move | |||
| 536 | through tall images. This value would be to point as window-vscroll | 536 | through tall images. This value would be to point as window-vscroll |
| 537 | is to window-start. | 537 | is to window-start. |
| 538 | 538 | ||
| 539 | ** Make redisplay smarter about which parts to redraw | ||
| 540 | Currently, redisplay has only 2 levels of redrawing: either it | ||
| 541 | redisplays only the selected window on the selected frame, or it | ||
| 542 | redisplays all the windows on all the frames. This doesn't scale well | ||
| 543 | when the number of visible frames is large. | ||
| 544 | |||
| 545 | Currently, two variables are used to make the decision what to | ||
| 546 | redisplay: update_mode_lines and windows_or_buffers_changed. These | ||
| 547 | are set by various functions called from Lisp, and if redisplay finds | ||
| 548 | one of them to be non-zero, it considers all the windows on all the | ||
| 549 | frames for redisplay. | ||
| 550 | |||
| 551 | The idea is to make the decision which parts need to be redrawn more | ||
| 552 | fine-grained. Instead of simple boolean variables, we could have a | ||
| 553 | bitmapped variable which records the kinds of changes done by Lisp | ||
| 554 | since the previous redisplay cycle. Then the decision what exactly | ||
| 555 | needs to be redrawn could be made based on the bits that are set. | ||
| 556 | |||
| 557 | For example, one reason to consider all frames is that some scrolling | ||
| 558 | command sets the update_mode_lines variable non-zero. This is done | ||
| 559 | because the frame title, which doesn't belong to any window, needs to | ||
| 560 | be reconsidered when the selected window is scrolled. But considering | ||
| 561 | the frame title doesn't have to redisplay all the other windows on the | ||
| 562 | frame, doesn't need to recompute the menu items and the tool-bar | ||
| 563 | buttons, and doesn't need to consider frames other than the selected | ||
| 564 | one. Being selective about what parts of the Emacs display need to be | ||
| 565 | reconsidered and redrawn given the changes since the last redisplay | ||
| 566 | will go along way towards making redisplay more scalable. | ||
| 567 | |||
| 568 | One way of making this change is to go through all the places that set | ||
| 569 | update_mode_lines and windows_or_buffers_changed, figure out which | ||
| 570 | portions of the Emacs display could be affected by each change, and | ||
| 571 | then implement the bitmap which will record each of these affected | ||
| 572 | display portions. The logic in redisplay_internal will then need to | ||
| 573 | be restructured so as to support this fine-grained redisplay. | ||
| 574 | |||
| 539 | ** Address internationalization of symbols names | 575 | ** Address internationalization of symbols names |
| 540 | Essentially as if they were documentation, e.g. in command names and | 576 | Essentially as if they were documentation, e.g. in command names and |
| 541 | Custom. | 577 | Custom. |
diff --git a/etc/emacs.service b/etc/emacs.service index c99c6779f58..809c49cdbc5 100644 --- a/etc/emacs.service +++ b/etc/emacs.service | |||
| @@ -9,7 +9,11 @@ Documentation=info:emacs man:emacs(1) https://gnu.org/software/emacs/ | |||
| 9 | [Service] | 9 | [Service] |
| 10 | Type=notify | 10 | Type=notify |
| 11 | ExecStart=emacs --fg-daemon | 11 | ExecStart=emacs --fg-daemon |
| 12 | ExecStop=emacsclient --eval "(kill-emacs)" | 12 | |
| 13 | # Emacs will exit with status 15 after having received SIGTERM, which | ||
| 14 | # is the default "KillSignal" value systemd uses to stop services. | ||
| 15 | SuccessExitStatus=15 | ||
| 16 | |||
| 13 | # The location of the SSH auth socket varies by distribution, and some | 17 | # The location of the SSH auth socket varies by distribution, and some |
| 14 | # set it from PAM, so don't override by default. | 18 | # set it from PAM, so don't override by default. |
| 15 | # Environment=SSH_AUTH_SOCK=%t/keyring/ssh | 19 | # Environment=SSH_AUTH_SOCK=%t/keyring/ssh |
diff --git a/etc/refcards/orgcard.tex b/etc/refcards/orgcard.tex index a261cb5a5fb..5613fdd6527 100644 --- a/etc/refcards/orgcard.tex +++ b/etc/refcards/orgcard.tex | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | % Reference Card for Org Mode | 1 | % Reference Card for Org Mode |
| 2 | \def\orgversionnumber{9.3} | 2 | \def\orgversionnumber{9.4.2} |
| 3 | \def\versionyear{2019} % latest update | 3 | \def\versionyear{2019} % latest update |
| 4 | \input emacsver.tex | 4 | \input emacsver.tex |
| 5 | 5 | ||
| @@ -17,7 +17,7 @@ | |||
| 17 | \pdflayout=(0l) | 17 | \pdflayout=(0l) |
| 18 | 18 | ||
| 19 | % Nothing else needs to be changed below this line. | 19 | % Nothing else needs to be changed below this line. |
| 20 | % Copyright (C) 1987, 1993, 1996--1997, 2001--2020 Free Software | 20 | % Copyright (C) 1987, 1993, 1996-1997, 2001-2020 Free Software |
| 21 | % Foundation, Inc. | 21 | % Foundation, Inc. |
| 22 | 22 | ||
| 23 | % This document is free software: you can redistribute it and/or modify | 23 | % This document is free software: you can redistribute it and/or modify |
| @@ -79,6 +79,9 @@ | |||
| 79 | \centerline{Released under the terms of the GNU General Public License} | 79 | \centerline{Released under the terms of the GNU General Public License} |
| 80 | \centerline{version 3 or later.} | 80 | \centerline{version 3 or later.} |
| 81 | 81 | ||
| 82 | \centerline{For more Emacs documentation, and the \TeX{} source for this card, see} | ||
| 83 | \centerline{the Emacs distribution, or {\tt https://www.gnu.org/software/emacs}} | ||
| 84 | |||
| 82 | \endgroup} | 85 | \endgroup} |
| 83 | 86 | ||
| 84 | % make \bye not \outer so that the \def\bye in the \else clause below | 87 | % make \bye not \outer so that the \def\bye in the \else clause below |
| @@ -515,7 +518,7 @@ after ``{\tt :}'', and dictionary words elsewhere. | |||
| 515 | \key{special commands in property lines}{C-c C-c} | 518 | \key{special commands in property lines}{C-c C-c} |
| 516 | \key{next/previous allowed value}{S-LEFT/RIGHT} | 519 | \key{next/previous allowed value}{S-LEFT/RIGHT} |
| 517 | \key{turn on column view}{C-c C-x C-c} | 520 | \key{turn on column view}{C-c C-x C-c} |
| 518 | \key{capture columns view in dynamic block}{C-c C-x i} | 521 | \key{capture columns view in dynamic block}{C-c C-x x} |
| 519 | 522 | ||
| 520 | \key{quit column view}{q} | 523 | \key{quit column view}{q} |
| 521 | \key{show full value}{v} | 524 | \key{show full value}{v} |
| @@ -558,7 +561,7 @@ after ``{\tt :}'', and dictionary words elsewhere. | |||
| 558 | \key{stop/cancel clock on current item}{C-c C-x C-o/x} | 561 | \key{stop/cancel clock on current item}{C-c C-x C-o/x} |
| 559 | \key{display total subtree times}{C-c C-x C-d} | 562 | \key{display total subtree times}{C-c C-x C-d} |
| 560 | \key{remove displayed times}{C-c C-c} | 563 | \key{remove displayed times}{C-c C-c} |
| 561 | \key{insert/update table with clock report}{C-c C-x C-r} | 564 | \key{insert/update table with clock report}{C-c C-x C-x} |
| 562 | 565 | ||
| 563 | \section{Agenda Views} | 566 | \section{Agenda Views} |
| 564 | 567 | ||