org-mobile- отправка из bash / crontab

#android #bash #emacs #org-mode

#Android #bash #emacs #org-режим

Вопрос:

На моей бывшей машине я бы выполнил через crontab скрипт с содержимым:

 #!/bin/bash
emacs --batch --load ~/.emacs --eval "(org-mobile-pull)" --eval "(org-mobile-push)"
  

На моей новой машине я использую .emacs, init.el и custom.el со своей старой машины. Но если я выполню этот скрипт на своем новом компьютере, файлы, которые я хочу отправить, не будут отправлены. Очевидно, что переменная org-mobile-files не учитывается, хотя init.el и custom.el загружены. Еще хуже: в то время как правильный agendas.org файл создан, я получаю пустую повестку дня на свой телефон Android, если выполняю синхронизацию. Если я выполняю org-mobile-push из запущенного emacs и открываю файл org, все работает нормально. Как я могу переписать свой скрипт, чтобы снова отправлять мои файлы / повестки дня из bash или crontab?

Ответ №1:

Хорошо, наконец-то я нашел решение / обходной путь. Я изменил сценарий, чтобы сначала открыть файл org. Теперь мой скрипт выглядит так:

 #!/bin/bash
emacs ~/Dropbox/path-to-org-files-directory/some-file.org --batch --load ~/.emacs --eval "(org-mobile-pull)" --eval "(org-mobile-push)"
  

Таким образом, мой скрипт работает. Странная вещь: прежде чем ответить на мой вопрос здесь, я уже пытался:

 #!/bin/bash
emacs ~/some-file.org --batch --load ~/.emacs --eval "(org-mobile-pull)" --eval "(org-mobile-push)"
  

Это не работает … На самом деле, открытие некоторого файла.org в моем домашнем каталоге в запущенном сеансе emacs, а затем с помощью org-mobile-push также не работает.