Emacs синхронизируют w/Google Calendar и Контакты?

Я должен был сделать тот некоторый месяц назад. Я просто стрелял, "находят /" и это было достаточно.

10
11.06.2013, 10:49
4 ответа

К сожалению, я не могу дать полный ответ. Все, что я имею, является советом о некоторых возможных путях для блуждания.

Самый легкий маршрут был бы то, если emacs-g-client, что Gilles упомянул в версии SU этого вопроса работы. Если бы это не работает, я изучил бы следующее:

  • По крайней мере необходимо смочь получить некоторую календарную функциональность путем доступа к Google Календарю с помощью iCal. Функция icalendar-import-file может импортировать файл iCal в emacs файл дневника (icalendar-import-file документация). Таким образом в Вашем .emacs файле у Вас могло быть немного шепелявости emacs, чтобы получить файл iCal Google Календаря и импортировать его в Ваш дневник. Если Вы действительно заканчиваете тем, что использовали org-режим существует много способов интегрировать org-режим с режимом дневника.

  • Я думаю, что конечная цель должна была бы использовать gdata API. Я не думаю, что существует простой способ получить доступ к контактам Google за пределами этого API. Существует утилита командной строки, которая поддерживает широкий спектр функциональности с помощью этого API, названного Google CL, который мог теоретически использоваться в некоторых функциях шепелявости emacs для обеспечения полного доступа к контактам, календарю и многим другим размещенным Google сервисам. Это однако, вероятно, было бы намного более трудным, чем всего несколько строк, брошенных в Ваш .emacs.

3
27.01.2020, 20:02

Для Google Calendar у меня есть один путь синхронизирующая установка успешно. Emacs выбирает мои календари при запуске и передает его в emacs дневнике. Это затем отображено org-режимом в программе, но можно настроить его так или иначе, Вы хотите.

Для передачи обратно Google Calendar я имею, все же устанавливают что-либо, поскольку мне не нужен он так очень. Однако я думаю, что было бы довольно легко иметь функцию, которая добавляет запись в дневнике и называет googlecl для добавления записи в Google Календаре.

Для выборки календарей у меня есть следующее в моем .emacs (не, что это не мой код, это прибывает из списка рассылки org-режима, но я не могу помнить, где я нашел его точно):

(setq mark-diary-entries-in-calendar t)
(defun getcal (url)
  "Download ics file and add to diary"
  (let ((tmpfile (url-file-local-copy url)))
    (icalendar-import-file tmpfile "~/diary" t)
    (kill-buffer (car (last (split-string tmpfile "/"))))
    )
  )
(setq google-calendars '(
                         "http://www.google.com/calendar/ical/DFSDFSDFSDFASD/basic.ics"
                         "http://www.google.com/calendar/ical/SDFSADFSADFASD/basic.ics"
                         ))
(defun getcals ()
  (interactive)
  (find-file "~/diary")
  (flush-lines "^[& ]")
  (dolist (url google-calendars) (getcal url))
  (kill-buffer "diary"))

Замена "http://www.google.com/calendar/ical/DFSDFSDFSDFASD/basic.ics" с URL к календарям Вы хотите выбрать (Вы находите его у основания страницы установки каждого календаря в Google Календаре). Можно добавить столько, сколько Вы желаете.

Теперь, можно просто звонить (getcals) когда Вы хотите выбрать календари. Можно поместить это в .emacs, чтобы сделать это при запуске, но это могло бы остановить запуск.

Чтобы иметь org-режим отображают записи в дневнике в программе, просто добавляют (setq org-agenda-include-diary t) в Вашем .emacs. См. руководство org-режима для деталей.

3
27.01.2020, 20:02

Для интеграции с контактами Google существует сценарий Julien Danjou, который Вы видите в действии здесь (репозиторий GitHub здесь):

Контакты Google для расширения Emacs позволяют отображать Ваш Google Contacts непосредственно в Emacs.

Обратите внимание, что это, вероятно, будет только работать, по крайней мере, с Emacs 24, так как это использует oauth2, который является частью GNU ELPA.

3
27.01.2020, 20:02

emacs-calfw может синхронизироваться с календарями в iCal (.ics) формат, такой как Google Calendar.

2
27.01.2020, 20:02

Теги

Похожие вопросы