I'm trying to make shortcuts for portable emacs related to the LaTeX and R portable compiler for Sweave, but I know little about the language used in .emacs (is it Lisp?)
I am currently using fullpath-relative-to-current-file , obtained from http://xahlee.org/emacs/elisp_relative_path.html to get the path to .emacs (which is in USBDRIVE/Documents ), then get the relative path to the compiler and call it on buffer-file-name , which is the full path and file name, including the extension extension:
(global-set-key (kbd "Cc s") (lambda () (interactive) (cond ((string-equal (file-name-extension (buffer-file-name)) "tex") (shell-command (concat (fullpath-relative-to-current-file "../PortableApps/miktex/miktex/bin/pdflatex ") buffer-file-name))) ) (cond ((string-equal (file-name-extension (buffer-file-name)) "Rnw") (shell-command (concat (fullpath-relative-to-current-file "../PortableApps/R/R-2.14.1/bin/R CMD Sweave ") buffer-file-name " --pdf"))) ) ) )
This allows me to use Cc s to launch LaTeX in the tex file and Sweave in the Rnw file. Now I would like to include calls in bibtex, but for this I need the file name and path to the tex file without the extension. How can i do this?
Sacha epskamp
source share