--Todoixx, Wundexxx - Bevor Sie sagen, können Sie Outlook verwenden?
――Wenn Sie mit Python eine Quelle erstellen, können Sie auf verschiedene Arten zusammenarbeiten und sind je nach Ihren Ideen frei
Vimmer?
win32com.client
Quelle
Outlook_alert_vim.py
# coding: utf-8
import pytz
import sys
from datetime import datetime, timedelta
import win32com.client as wcl
def win_time_norm(d):
'''
In Outlook-Zeitformat konvertieren
:param d: Datetime
:return: Type pytx Datetime
'''
date = pytz.utc.localize(d)
return date
def post_outlook_task(task_list):
'''
Registrieren Sie Aufgaben in Outlook
・ Win32com.Client vorbereiten
・ Anaconda ist standardmäßig enthalten
out_task.DueDate = s_win_day
・ Wenn Sie das Datum auf heute einstellen, kann stattdessen die Benachrichtigung verwendet werden.
・ Wenn die Frist festgelegt ist, z_win_Tag registrieren
・ Edday(5 Tage)で5 Tage後アラートにしてる
:param task_list:Betreff die erste Textzeile in VIM
'''
stday = datetime.today()
edday = datetime.today() + timedelta(days=5)
s_win_day = win_time_norm(stday)
e_win_day = win_time_norm(edday)
outlook = wcl.Dispatch("Outlook.Application")
for task in task_list:
out_task = outlook.CreateItem(3)
out_task.Subject = task[0]
out_task.Body = task[1]
out_task.StartDate = s_win_day
out_task.DueDate = s_win_day
# out_task.DueDate = e_win_day
out_task.ReminderSet = True
out_task.Save()
def main(args):
filename = str(args[0])
with open(filename, mode="r", encoding='utf-8') as fh:
data = fh.readlines()
data = [t.strip().strip('\n') for t in data if t]
#Ich kann mich kontinuierlich registrieren(Ich brauche dieses Beispiel nicht)
task_list = []
task_list.append((data[0], "\n".join(data)))
# task_list.append(("test subject","body row1 \n body row2"))
post_outlook_task(task_list)
if __name__ == "__main__":
main(sys.argv[1:])
Geben Sie den Speicherort von s: python_file selbst an.
_vimrc
"outlook_task_vim"{{{
function! s:outlook_posttask_vim()"
let s:python_file = "D:/Outlook_alert_vim.py"
let s:file = tempname()
silent execute ":write " . s:file
silent execute "!python " . s:python_file . ' ' . s:file
call delete(s:file)
unlet! s:file
unlet! s:py_script
endfunction augroup END"
command! -nargs=0 PostOutlookTask call s:outlook_posttask_vim()
"}}}
Recommended Posts