4

I finally use this solution src_emacs-lisp[:results raw]{(concat "#+SETUPFILE: " (expand-file-name (car (project-roots (project-current)))) "setup/setup.org")} #+TITLE: My test * Test... An alternative that also works is to use a regular code block (you can define elsewhere and load with org-babel-lob-ingest in your Emacs init.el file, Config, examples ...


3

You can use Radio Links for this. I use them quite a bit. Here's an excerpt with an example from the org-mode manual. For example, a target <<<My Target>>> causes each occurrence of ‘my target’ in normal text to become activated as a link. I found some more answers in another stack exchange answer. In this one a glossary is included as ...


3

You can get all the buffer tags by calling org-get-buffer-tags. You can then combine that with completing-read whose doc string reads as follows: completing-read is a built-in function in ‘C source code’. (completing-read PROMPT COLLECTION &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF INHERIT-INPUT-METHOD) ... Read a string ...


2

My wild guess would be that the customization that Doom does replaces the * with some fancy symbol, but that the font you are using is unable to display that symbol. You could try switching the font or trying to find out which font Doom expects.


2

org-roam has a function that does this here (defun org-roam--extract-titles-title () "Return title from \"#+TITLE\" of the current buffer." (let* ((prop (org-roam--extract-global-props '("TITLE"))) (title (cdr (assoc "TITLE" prop)))) (when title (list title)))) (defun org-roam--extract-global-props (props) "Extract PROPS ...


2

You can use file variables (or in this case, a pseudo-variable) to do something when you open a particular file. Add something like this at the bottom of the file: # Local Variables: # eval: (progn (org-agenda-list) (split-window-below)) # End: In order to avoid confirmation questions, you'll also have to set a couple of variables in your init file: (setq ...


2

It's looking for a function called org-babel-execute:coq and not finding one. Your idea to modify org-babel-load-languages is the right one, since it doesn't load any of these functions by default; you must specifically request that they be loaded. I've double checked, and my emacs does come with a file called ob-coq.el which looks like it has everything ...


2

Your source code block has text set as the mode. Try changing that to read #+BEGIN_SRC snippet :tangle ~/org/snippets/bibtex-mode/article


2

Generally the values inside org-agenda-custom-commands are hard-coded so you have no chance to prompt for input. But one of the choices for an entry type in org-agenda-custom-commands is a user defined function, which will be called with a single argument. So first define a function that prompts for a value of the WITH property and runs org-tags-view on ...


2

M-: (setq debug-on-message "Entry repeats: SCHEDULED") The stack traces should show you what is causing each instance of that message. See C-hig (elisp)Using Debugger for help on the debugger. When you're done, M-: (setq debug-on-message nil)


1

So it seems that the problem was that, because I was making no changes on the posts, org-mode saw no need to recompile it. To overcome this, just add the force flag to the org-publish function.


1

You shoud set org-clock-report-include-clocking-task to non-nil for that. It's a defcustom so just using setq might not work. It didn't for me.


1

Digging further, I feel stupid(er than usual). Removing outshine-mode completely, I still get org-like folding behavior in markdown-mode, and this is because org-like folding is already in markdown mode! (See under "Usage".) As for the restructuring commands (moving one header above another and so on), these are just done by C-<down> etc. instead of M-...


1

The built-in which-function-mode normally displays the name of the function the point is currently in for languages like C and Python. But in org-mode it treats the current headline as the "function" name to display. Turn it on temporarily with M-x which-function-mode or permanently for all org-mode files with (add-to-hook 'org-mode-hook #'which-function-...


1

For this particular case... In that call to org-auto-repeat-maybe we see this: (when org-log-repeat (if (or (memq 'org-add-log-note (default-value 'post-command-hook)) (memq 'org-add-log-note post-command-hook)) ;; We are already setup for some record. (when (eq org-log-repeat 'note) ;; Make sure we take a note, not only a ...


1

You can do this either with tags or with properties. Assuming an org file that looks like this: * headline 1 :tag1: :PROPERTIES: :WITH: hello :END: * headline 2 :tag2: :PROPERTIES: :WITH: goodbye :END: * headline 3 Then C-c a m WITH="hello" RET will get you an agenda containing 'headline 1' (assuming that you're using C-...


1

Probably the simplest thing to do is to define your own preview function that locally redefines the function that pops up the buffer so that it does nothing, then redo the key binding so that it calls your function instead: (defun my-org-latex-preview () (interactive) (cl-letf (((symbol-function 'display-message-or-buffer) (lambda (msg) nil))) (org-...


1

If this is really an appointment reminder, rather than a scheduled task, then the easiest thing to do is to forego the SCHEDULED: marker and just have the three timestamps listed (I like putting the timestamps on different lines, but you can put them on a single line if you want): * stuff to do <Monday 4/5/2020 +1w> <Wed 6/5/2020 +1w> <...


1

One idea would be to create a custom function that tests for specified days of the week. The following example is hard-coded to return t for Monday (i.e., 1), Wednesday (i.e., 3) and Friday (i.e., 5). This can be used in an org-mode file such as: * My Task SCHEDULED: <%%(diary-monday-wednesday-friday date)> Or, it can be used in a diary file and ...


1

Found the answer on Reddit: https://www.reddit.com/r/emacs/comments/7kt7nh/is_it_possible_to_refile_an_orgmode_header_in/ To recap, use (setq org-reverse-note-order t) to revert the new notes order when refiling. Documentation for org-rev-note-order: Non-nil means store new notes at the beginning of a file or entry. When nil, new notes will be filed to ...


1

If the value of org-agenda-files is a directory, by default all files with the extension .org will be considered for the agenda. See C-h v org-agenda-files for more information.


1

As an alternative, you can use the ox-pandoc package. Pandoc itself has a command line option called --self-contained which will embed images in html. To you use this for just the pandoc HTML5 exporter, by putting this in your .emacs: (setq org-pandoc-options-for-html5 '((standalone . t) (self-contained . t))) Also, you could have it for html4 instead/as ...


1

Here's one way: (defun to-integer-mins (s) "Convert a string in HH:MM format to integer minutes." (if s (seq-reduce (lambda (x y) (+ y (* x 60))) (mapcar #'string-to-number (split-string s ":")) 0) 0)) (defun int-to-hh-mm (n) "Convert an integer to an HH:MM format string." (let* ((h (/ n 60)) ...


1

Although Org mode allows LaTeX math fragments to be inserted, there are some limitations. This is one of them. The way to get inline math fragments in such cases is to use the \( ... \) form that LaTeX allows, e.g. \( \$ \) in this case. See the LaTeX fragments section of the manual, which states: LaTeX fragments do not need any special marking at ...


1

I think this is pretty easy to do. :tangle can take no or yes, a filename, but also a lisp function. For example: #+BEGIN_SRC bash :tangle (make-string 5 ?x) ls -tr #+END_SRC Recall that header arguments can be set at different levels (for example as a +#PROPERTY under a headline) so you can have headlines for different OS, hosts, etc. Create a function ...


1

You can use src babel blocks for org like the following: * Table 1 #+NAME: table-1-title Characteristcs of Data #+BEGIN_SRC R :file table-1.svg :results output graphics file ( ggplot(mtcars, aes(mpg, cyl)) + geom_point() ) #+END_SRC #+name: result-file #+RESULTS: table-1.svg #+begin_src org :results replace :var title=table-1-title file=...


1

You may want to take a look at the orgtbl-aggregate package available on http://melpa.org Documentation here: https://github.com/tbanel/orgaggregate First you create a column which tells it is a win or a lose. #+name: winlose | Amount | Win? | |--------+------| | 3.50 | win | | 1.00 | win | | -6.00 | lose | | 5.00 | win | | -2.50 | lose | #+...


1

Tl;dr Use Yasnippet Hi, from the use case you describe, Yasnippet could provide a solution for you. On the EmacsWiki page for this project it is explained that: [Yasnippet] allows you to type an abbreviation and automatically expand it into function templates. In your case, the function template would just be a constant string. Detailed Example I ...


1

You may use the orgtbl-aggregate package available on http://melpa.org The sum of Col1 and Col2 is given in the aggregated table below. #+name: cc | Col1 | Col2 | Sum8 | |------+------+------| | 1 | 3 | 4 | | 2 | 8 | 10 | | 3 | -9 | -6 | #+TBLFM: $3=$1+$2 #+BEGIN: aggregate :table "cc" :cols "vsum(Col1+Col2)" | vsum(Col1+Col2) | |--...


1

You need a function that collects the title of the original file (the file visited by the current buffer when org-capture was called). If you have org-collect-keywords (added in b4e91b7e949), you can use: (defun get-title (file) (let (title) (when file (with-current-buffer (get-file-buffer file) (pcase (org-collect-keywords '("...


Only top voted, non community-wiki answers of a minimum length are eligible