Emacs를 사용하여 Google 캘린더 및 Google 연락처와 동기화할 수 있는 방법이 있습니까? 오프라인에서 액세스할 수 있도록 로컬 복사본을 보관하는 것이 좋습니다.
답변1
안타깝게도 완전한 답변을 드릴 수는 없습니다. 내가 가진 것은 가능한 산책에 대한 제안뿐입니다.
가장 간단한 경로는 다음과 같습니다.emacs-g-클라이언트이 질문의 SU 버전에서 Giles가 언급한 내용이 작동합니다. 그래도 작동하지 않으면 다음을 살펴 보겠습니다.
적어도 ical을 사용하여 Google 캘린더에 액세스하면 일부 캘린더 기능을 얻을 수 있어야 합니다. 이 기능은
icalendar-import-file
ical 파일을 emacs 저널 파일(icalendar - 파일 가져오기문서). 따라서 .emacs 파일에서 일부 emacs lisp를 사용하여 Google 캘린더 ical 파일을 가져와 일기로 가져올 수 있습니다. 조직 모드를 사용하게 되면 조직 모드를 일기 모드와 통합하는 여러 가지 방법이 있습니다.궁극적인 목표는 gdata api를 활용하는 것이라고 생각합니다. 이 API 외부에서 Google 연락처에 액세스하는 쉬운 방법은 없다고 생각합니다. 이 API를 사용하여 광범위한 기능을 지원하는 명령줄 유틸리티가 있습니다.구글 CL, 이론적으로 특정 emacs lisp 기능 내에서 연락처, 캘린더 및 기타 여러 Google 호스팅 서비스에 대한 전체 액세스를 제공하는 데 사용될 수 있습니다. 그러나 이는 .emacs에 몇 줄을 작성하는 것보다 훨씬 더 어려울 수 있습니다.
답변2
Google 캘린더의 경우 단방향 동기화를 성공적으로 설정했습니다. Emacs는 시작 시 내 달력을 가져와 Emacs 저널로 전송합니다. 그러면 조직 모드를 통해 의제에 표시되지만 원하는 대로 설정할 수 있습니다.
꼭 필요한 것이 아니기 때문에 Google 캘린더로 다시 보낼 항목을 설정하지 않았습니다. 하지만 일지에 항목을 추가하고 호출하는 기능이 있으면 쉬울 것이라고 생각했습니다.구글클Google 캘린더에 항목을 추가하세요.
달력을 얻으려면 내 .emacs에 다음이 있어야 합니다(이것은 내 코드가 아니며 조직 모드 메일링 목록에서 가져온 것이지만 어디서 찾았는지 기억이 나지 않습니다).
(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에 이를 넣을 수 있지만 부팅이 되지 않을 수 있습니다.
조직 모드에서 의제에 저널 항목을 표시하려면 (setq org-agenda-include-diary t)
.emacs에 추가하기만 하면 됩니다. 보다조직 모델 핸드북더 알아보기.
답변3
답변4
emacs-calfw.ics
Google 캘린더 등 iCal( ) 형식의 캘린더와 동기화할 수 있습니다 .