eschulte / epresent Goto Github PK
View Code? Open in Web Editor NEWPresentations in Emacs -- based on Org-mode
Presentations in Emacs -- based on Org-mode
While installing on Mac its gives an error says " Cannot open load file: ox"
Here is the details about env
I have the following source block in a slide:
#+begin_src R :file corrected_alpha.png :results graphics :width 700 :height 300 :pointsize 18
par(mar=c(4,4,0.1,0.1))
plot(0.05/(1:20), t="l", ylim=c(0, 0.06), ylab="Corrected α", xlab="Number of Tests")
grid(); lines(c(0, 21), c(0.05, 0.05), lty=2)
#+end_src
#+RESULTS:
[[file:corrected_alpha.png]]
When I, enter presentation mode, the image is not shown and neither is the link. Only when I execute the code block by pressing x
the image is shown. Interestingly, the image often disappears after a while and the time until this happens varies from two to, say, twenty seconds.
Another problem that is potentially related is that latex equations are often (but not always) not displayed in their rendered form. To fix that I added (org-preview-latex-fragment)
at the end of epresent-next-page
and epresent-previous-page
. However, when I execute a code block on the same slide, the rendered equation is replaced by the LaTeX source.
Sometimes you plug into a projector and realize part of the screen is obscured, so I’ve added a couple keybindings to dynamically resize the frame borders.
Ideally, this would also adjust the font size to keep from cutting things off the screen.
When the title is to long to fit on one line the second line starts further to the left than the first line which looks odd:
This is a very long
title.
In org mode the function in the title is to be replaced with org-toggle-latex-preview for later Emacs. At the moment I find that after running a presentation I cannot get back to the latex fragments and have to close and reopen the file. Maybe needs a version check to decide which function to use. C-c C-c no longer returns the file to its previous state - before running a presentation C-c C-x C-l switches the previews on and off nicely.
Tag a v0.1 version so we can also rely on a melpa.stable version :)
Hi,
I'm considering using epresent to run a presentation written in org-mode:
Unfortunately, I have small issues to report.
This is the first one.
On the first page, title is printed with a smaller font than the one used for author name, even the comments (licence) is bigger than the title.
I'm using Fedora 24, GNOME 3.20, GNU Emacs 25.0.94.1, Org-mode version 8.2.10, epresent 32e486c
Yeah, it looks like Emacs, but a couple shots with different fonts/themes might give users a better idea of what to expect. Maybe side-by-sides of the org view and the epresent view.
I have an org file that I'd like to use with epresent but also for generating a manual in PDF:
#+Title: Using Epresent
#+EPRESENT_FRAME_LEVEL: 1
#+OPTIONS: toc:nil
#+LATEX_HEADER: \setlength{\parindent}{0pt}
#+LATEX_HEADER: \setlength{\parskip}{0.5em}
...
* Introduction
...
Problem: for every header line, I get an empty line in the presentation and the outline is pushed to the bottom.
One of my slides starts with "Done!" but epresent doesn't show that in presentation mode.
Example:
* Done! Now the experiment is ready to run.
It makes sense to remove DONE
because that's an org keyword but epresent should leave things like Done!
untouched.
Consider this org fragment:
This is text before the source block.
#+begin_src
This is in the source block.
#+end_src
This is after the block.
In presentation mode this is displayed as:
This is text before the source block.
This is in the source block.
This is after the block.
The expected result is:
This is text before the source block.
This is in the source block.
This is after the block.
The benefit of hiding the empty lines is that it gives the user full control over the vertical spacing. Currently I end up with empty lines that do nothing but wasting screen real estate.
I'd like to include code in my org presentation file that generates a graph. During the presentation, I like to show the graph but not necessarily the code because it would distract the audience. Is there a way to hide the code, e.g., by adding a keyword to the begin_src
line? If not, it might be useful to add something along these lines. It would also be useful if the visibility of hidden elements could be toggled. This way I could unhide the code during the presention in order to modify it, execture it to produce the updated graph, and hide the code again.
Just installed it. But epresent-run
shows the following error:
Compiling no file at Tue May 2 16:28:38 2017
Leaving directory ‘/home/arne/.emacs.d/elpa/epresent-20160410.1901’
Compiling file /home/arne/.emacs.d/elpa/epresent-20160410.1901/epresent.el at Tue May 2 16:28:38 2017
Entering directory ‘/home/arne/.emacs.d/elpa/epresent-20160410.1901/’
epresent.el:46:1:Error: Symbol’s function definition is void: org-define-error
Evaluating this line did fix the problem on my side:
(define-obsolete-function-alias 'org-define-error 'define-error)
This is something I haven’t implemented … yet.
It would be great to have epresent open 2 frames, so the main one could be put on a second display, and a secondary frame could stay on the laptop, showing helpful things like speaker notes (which could be in a specially-named drawer), timer, etc.
At least on OS X, I see this behavior. I tend to work in Emacs full-screened. But if I don’t exit that mode before epresent-run
, Emacs crashes.
Even when EPRESENT_FRAME_LEVEL
is 1 or 2, deeper levels show up in collapsed outline views, but it’s impossible to distinguish deeper levels from subheadings.
Right now they’re just displayed as ASCII art. Would be nice to render them somehow.
I use a remote that has three settings (“PC”, Mac Keynote, and Mac PPT). None of them manage to control epresent. I’ve added some key bindings (PgUp, PgDn, etc.) for navigation that work with the remote.
Git cloned the epresent repo & tried to load the file
require(ox)
eval-buffer(#<buffer *load*> nil "/home/sk/.emacs.d/others/epresent/epresent.el" nil t) ; Reading at buffer position 1678
load-with-code-conversion("/home/sk/.emacs.d/others/epresent/epresent.el" "/home/sk/.emacs.d/others/epresent/epresent.el" nil nil)
i am not sure where to download this package ox from? i am using emacs 24.3.1 on ubuntu 14.04...
So currently, you have to press "c" to navigate to the first code block, and then you can execute. It would be nice if "c" automatically went to the first codeblock when it is not already in one.
Line: 411
;; hide tags
(when epresent-hide-tags
(goto-char (point-min))
(while (re-search-forward
(org-re "^\\*+.*?\\([ \t]+:[[:alnum:]_@#%:]+:\\)[ \r\n]")
nil t)
(push (make-overlay (match-beginning 1) (match-end 1)) epresent-overlays)
(overlay-put (car epresent-overlays) 'invisible 'epresent-hide)))
--> causes
epresent.el: Warning: ‘org-re’ is an obsolete macro (as of 9.0); you can safely remove it.
--> however on removing
(org-re "^\\*+.*?\\([ \t]+:[[:alnum:]_@#%:]+:\\)[ \r\n]")
--> causes all the bullets are missing
This is another one I have done locally, and have to remember to submit after my next talk.
I generalized epresent-text-size
to epresent-face-attributes
, and added a #+EPRESENT_FACE_ATTRIBUTES
option so that it can also be customized per-org-file.
I note that when epresentation is complete, epresent-quit calls (org-mode) which will have the effect of resetting selected org variables un-expectedly.
For instance, I have the following header in my.org file:
# -*- org-export-babel-evaluate: nil; org-export-allow-BIND: t -*-
which causes org-export-babel-evaluate to be set to nil.
After presenting this buffer, the variable takes on its default value of t.
Otherwise, epresent is very useful, thanks!
Hi,
I'm considering using epresent to run a presentation written in org-mode:
Unfortunately, I have small issues to report.
This is the third one.
The slide / page counter behave strangely:
It starts at 0, for the title page, but as soon as we go to next page, eg. page 1, going back to title page, the counter will stay at 1
It is allowed to increase pass the real page count, eg. it's possible to go to next page even if we're already at last page, the counter will be incremented.
Once the counter is made greater than the actual number of page, once back to first page, going back will be allowed for the same amount.
I'm using Fedora 24, GNOME 3.20, GNU Emacs 25.0.94.1, Org-mode version 8.2.10, epresent 32e486c
I'm trying to resize the image (in present.org) by using
or
but when I do that, the image doesn't appear, and I can't see the LaTeX formula anymore.
moreover, the picture doesn't appear neither.
The worse being that sometimes the formula continues to work and sometimes not (but never does the picture appear except when I do org-display-inline-images) and I can't find a way to reproduce that each time.
Hi there,
I loaded the epresent.el package within spacemacs by defining the following in ~/.spacemacs:
dotspacemacs-additional-packages '(epresent)
and I get the following warnings:
epresent.el:48:1:Warning: defface for `epresent-title-face' fails to specify
containing group
epresent.el:51:1:Warning: defface for `epresent-heading-face' fails to specify
containing group
epresent.el:54:1:Warning: defface for `epresent-subheading-face' fails to
specify containing group
epresent.el:57:1:Warning: defface for `epresent-author-face' fails to specify
containing group
epresent.el:60:1:Warning: defface for `epresent-bullet-face' fails to specify
containing group
epresent.el:63:1:Warning: defface for `epresent-hidden-face' fails to specify
containing group
epresent.el:94:1:Warning: `make-variable-frame-local' is an obsolete function
(as of 22.2); explicitly check for a frame-parameter instead.
In epresent-mode:
epresent.el:454:9:Warning: assignment to free variable
`org-hide-pretty-entities'
Example
* Headline
*This is a test*
The second line is not a org mode headline but it is nevertheless displayed with headline font in presentation mode.
Hi,
I'm considering using epresent to run a presentation written in org-mode:
Unfortunately, I have small issues to report.
This is the fourth one.
headlines are too small compared to the content
I'm using Fedora 24, GNOME 3.20, GNU Emacs 25.0.94.1, Org-mode version 8.2.10, epresent 32e486c
Epresent lets you navigate within a too-long slide with the up/down arrows. Sometimes I’d like to take advantage of this second level of navigation by breaking a section with page breaks (^L
, or some other mechanism), and moving up and down across well-defined pages, rather than trying to insert the correct number of line breaks to get the content onto different “pages”.
In my org file, i have image links which i toggle using org-toggle-inline-images. and things are working fine on opening the org file.
Then i start presentation as 'M-x epresent-run', and come out by pressing 'q'. Then inline image toggling stops working.
Stack overflow issue raised - http://emacs.stackexchange.com/questions/9872/hide-inline-images-and-show-links-in-org-mode
Hi,
Great package.
Could you implement it to work with evil-mode?
Thx
#1 When I quit the presentation to show a demo, and want to resume from the nth slide, I have to press 't' followed by 'n' (n times).
Is it possible to write a function to directly move to the nth slide?
#2 It will be good to have an option to show the title, author, date on all the slides (as a footer) along with the slide count. For example: [3/10].
It would be nice to be able to mark some material as "hidden" so that it does not show up in the presentation but still can be exported and manipulated like regular material. A use case for this are presentations that are exported with additional material that would not fit on screen. A second use case is having the org buffer open on a second monitor to be able to read the hidden notes as part of the presentation.
An example could be:
- Important topic
- :hide: Further details on topic
- Important topic
So that the second item would not show up in the presentation. Unfortunately my elisp is too basic to implement this...
When running epresent-run
I see the following error, it goes to Spacemacs' home screen, changes some fonts, goes fullscreen and nothing more:
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
re-search-forward(nil nil t)
epresent-fontify()
epresent-mode()
epresent-run()
funcall-interactively(epresent-run)
#<subr call-interactively>(epresent-run record nil)
apply(#<subr call-interactively> epresent-run (record nil))
call-interactively@ido-cr+-record-current-command(#<subr call-interactively> epresent-run record nil)
apply(call-interactively@ido-cr+-record-current-command #<subr call-interactively> (epresent-run record nil))
call-interactively(epresent-run record nil)
command-execute(epresent-run record)
helm-M-x-execute-command(epresent-run)
helm-execute-selection-action-1()
helm-execute-selection-action()
helm-internal((((name . "Emacs Commands history") (init #f(compiled-function () #<bytecode 0x1b51de50f1b8b5eb>)) (candidates . helm-candidates-in-buffer) (cleanup . helm-M-x--unwind-forms) (keymap keymap (keymap ...) keymap (29 . helm-M-x-toggle-short-doc) (21 . helm-M-x-universal-argument) keymap (127 . delete-backward-char) (27 keymap ...) (C-return . helm-cr-empty-string) keymap (C-iso-lefttab . helm-follow-action-backward) (26 . helm-select-action) (tab . helm-execute-persistent-action) (17 . ace-jump-helm-line) (f12 . #f(compiled-function () ... #<bytecode 0x1f4042abc50680>)) (f11 . #f(compiled-function () ... #<bytecode 0x1f4042abd97680>)) (f10 . #f(compiled-function () ... #<bytecode 0x1f4042abd86680>)) (f9 . #f(compiled-function () ... #<bytecode 0x1f4042abde5680>)) (f8 . #f(compiled-function () ... #<bytecode 0x1f4042abdf4680>)) (f7 . #f(compiled-function () ... #<bytecode 0x1f4042abdab680>)) (f6 . #f(compiled-function () ... #<bytecode 0x1f4042abdba680>)) (f5 . #f(compiled-function () ... #<bytecode 0x1f4042abd79680>)) (f4 . #f(compiled-function () ... #<bytecode 0x1f4042abd68680>)) (f3 . #f(compiled-function () ... #<bytecode 0x1f4042abd4f680>)) (f2 . #f(compiled-function () ... #<bytecode 0x1f4042abd5e680>)) (menu-bar keymap ...) (help keymap ...) (23 . helm-helm-yank-text-at-point-with-subkeys) (f1 . #f(compiled-function () ... #<bytecode 0x1f4042abd3d680>)) (8) (20 . helm-toggle-resplit-and-swap-windows) ...) (action . helm-type-command-actions) (persistent-action . helm-M-x-persistent-action) (persistent-help . "Describe this command") (help-message . helm-M-x-help-message) (requires-pattern . 0) (filtered-candidate-transformer helm-M-x-transformer-no-sort #f(compiled-function (candidates source) #<bytecode -0x12935576f8d1210b>) helm-fuzzy-highlight-matches) (volatile . t) (match identity) (fuzzy-match . t) (redisplay . identity) (nomark . t) (coerce . helm-symbolify) (header-line . #("C-j: Describe this command (keep..." 0 3 ...)) (resume . helm-M-x-resume-fn) (multimatch . t) (must-match . t) (group . helm-command) (data . #f(compiled-function () #<bytecode -0xcfeb88b0388c217>)) (get-line . buffer-substring-no-properties) (search helm-mm-exact-search helm-mm-search helm-candidates-in-buffer-search-default-fn helm-fuzzy-search)) ((name . "Emacs Commands") (init #f(compiled-function () #<bytecode -0x1d7b6a0cbe7a02e2>)) (candidates . helm-candidates-in-buffer) (cleanup . helm-M-x--unwind-forms) (keymap keymap (keymap ...) keymap (29 . helm-M-x-toggle-short-doc) (21 . helm-M-x-universal-argument) keymap (127 . delete-backward-char) (27 keymap ...) (C-return . helm-cr-empty-string) keymap (C-iso-lefttab . helm-follow-action-backward) (26 . helm-select-action) (tab . helm-execute-persistent-action) (17 . ace-jump-helm-line) (f12 . #f(compiled-function () ... #<bytecode 0x1f4042abc50680>)) (f11 . #f(compiled-function () ... #<bytecode 0x1f4042abd97680>)) (f10 . #f(compiled-function () ... #<bytecode 0x1f4042abd86680>)) (f9 . #f(compiled-function () ... #<bytecode 0x1f4042abde5680>)) (f8 . #f(compiled-function () ... #<bytecode 0x1f4042abdf4680>)) (f7 . #f(compiled-function () ... #<bytecode 0x1f4042abdab680>)) (f6 . #f(compiled-function () ... #<bytecode 0x1f4042abdba680>)) (f5 . #f(compiled-function () ... #<bytecode 0x1f4042abd79680>)) (f4 . #f(compiled-function () ... #<bytecode 0x1f4042abd68680>)) (f3 . #f(compiled-function () ... #<bytecode 0x1f4042abd4f680>)) (f2 . #f(compiled-function () ... #<bytecode 0x1f4042abd5e680>)) (menu-bar keymap ...) (help keymap ...) (23 . helm-helm-yank-text-at-point-with-subkeys) (f1 . #f(compiled-function () ... #<bytecode 0x1f4042abd3d680>)) (8) (20 . helm-toggle-resplit-and-swap-windows) ...) (action . helm-type-command-actions) (persistent-action . helm-M-x-persistent-action) (persistent-help . "Describe this command") (help-message . helm-M-x-help-message) (requires-pattern . 0) (filtered-candidate-transformer helm-M-x-transformer-no-sort #f(compiled-function (candidates source) #<bytecode -0x12935576f8d1210b>) helm-fuzzy-highlight-matches) (volatile . t) (match identity) (fuzzy-match . t) (redisplay . identity) (nomark . t) (coerce . helm-symbolify) (header-line . #("C-j: Describe this command (keep..." 0 3 ...)) (resume . helm-M-x-resume-fn) (multimatch . t) (must-match . t) (group . helm-command) (data . #f(compiled-function () #<bytecode -0x119d385858ffd98>)) (get-line . buffer-substring-no-properties) (search helm-mm-exact-search helm-mm-search helm-candidates-in-buffer-search-default-fn helm-fuzzy-search))) nil "M-x " nil nil "*helm M-x*" nil nil helm-M-x-input-history)
epresent-quit
goes back to initial state.
It is sometimes quite hard to discern which bits are code which not. Can the code be underlain with a different background color? If so how.
An example would be the grey background to this code:
def f(x):
x+x
I’ve done this locally – this is a reminder to submit a PR.
Add a dependency on zoom-frm, and use that instead of text-adjust-size for scaling.
Hi,
I'm considering using epresent to run a presentation written in org-mode:
Unfortunately, I have small issues to report.
This is the second one.
The slide / page number is displayed way to big in footer.
It should be possible to choose how this page number will be rendered (location, size).
I'm using Fedora 24, GNOME 3.20, GNU Emacs 25.0.94.1, Org-mode version 8.2.10, epresent 32e486c
It'd be nice to have some sort of centering. Currently I use
(add-hook 'epresent-start-presentation-hook #'center-current-window)
with
https://gist.github.com/unhammer/103e8ad5823ea323d328
but I feel like that code is a bit roundabout …
Also, since fringes look ugly centered:
(defun turn-on-fringe-mode ()
(set-fringe-style nil))
(defun turn-off-fringe-mode ()
(set-fringe-style 0))
(add-hook 'epresent-start-presentation-hook #'turn-off-fringe-mode)
(add-hook 'epresent-stop-presentation-hook #'turn-on-fringe-mode)
I had problems trying to install epresent where I got the following error messages:
Cannot open load file: ox
Symbol's value as variable is void: org-list-allow-alphabetical
Googling showed that it's because I was missing the latest version of org-mode. It seemed to be fixed by M-x package-install RET org RET
but this should be taken care of the package's dependencies --- I see that org-present
includes a dependency on org-7
, for example.
If epresent does depend on org-8
as it appears to, then org-8
should be a dependency of the package.
When I press "e" to edit, then "C-c ' " to confirm. The source code block disappears for me until I press "r" to refresh. Does anyone else experience this issue? Is it intentional?
Support org mode timers in epresent modeline
I don't think this will be that hard to do, might look into it more eventually when I have time (when have you heard that before... :)
macOS 13.4.1, Emacs 28.2
If I quit the presentation from the full-screen presentation frame, Emacs crashes.
If I instead exit full-screen mode first or switch to the (non-full-screen) non-presentation frame and quit from there, everything is fine.
Latex equations are often (but not always) not displayed in their rendered form. To fix that I added (org-preview-latex-fragment) at the end of epresent-next-page and epresent-previous-page. However, when I execute a code block on the same slide, the rendered equation is replaced by the LaTeX source so this hack doesn't really solve it.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.