Я получил эту функцию в моей .bash_rc:Вызов функции пользовательских Emacs с аргументами
function ForwardSearchXdvi {
latex -src *.tex;
for i in *.dvi; do xdvi -sourceposition "$1 ${i/.dvi/.tex}" $i; done ;
}
это работает ... Я называю его по командной строке с аргументом $ 1 (номер целевой линии в файле file.tex), и все в порядке.
Я хотел бы, чтобы запустить его прямо из Emacs, так что я сделал эту команду:
(defun ForwardXdviSearch()
(interactive)
(shell-command (format "bash -ic %s" (shell-quote-argument "latex -src J[HCI]*.tex; for i in J[HCI]*.dvi; do xdvi -sourceposition \"$1 ${i/.dvi/.tex}\" $i; done ;")))
)
Как я могу передать аргумент $ 1 к функции, когда я назовите его «Mx Function»?
Убедитесь, что вы читали 'Ch F interactive' – phils