คุณกำลังทำอะไร ในวันที่ 14 กุมภาพันธ์ 2550? คุณทำงาน อะไร ในวันนั้นและได้พบกับเพื่อนสาวของคุณ? การนัดหมายครั้งสุดท้าย กับทันตแพทย์ของคุณคือเมื่อใด? ใครโทรหา คุณทางโทรศัพท์ระหว่างการประชุมกับลูกค้าเมื่อเดือนที่แล้ว
คนส่วนใหญ่ไม่สามารถตอบคำถามดังกล่าวได้ ด้วย Memacs คุณทำได้!
Memacs แยกข้อมูลเมตา (หัวเรื่อง การประทับเวลา ข้อมูลติดต่อ …) จากแหล่งข้อมูลที่มีอยู่มากมาย (ชื่อไฟล์ อีเมล ทวีต บุ๊กมาร์ก …) บนคอมพิวเตอร์ของคุณ และสร้างไฟล์ที่ GNU Emacs สามารถอ่านได้ด้วยโหมด Org
ตัวอย่าง:
อีเมล -> memacs-maildir.py ประวัติ Firefox -> memacs-firefox.py | SMS -> memacs-sms.py | RSS-feeds -> memacs_rss.py | ใบแจ้งยอดธนาคาร -> memacs-easybank.py |> Memacs การโพสต์ -> memacs-slrn.org | บันทึกที่เก็บ git -> memacs_git.py | บันทึกที่เก็บ svn -> memacs_svn.py / - - - ข้อมูลส่วนตัวของคุณ โมดูล Memacs โหมดองค์กร
Memacs ซึ่งเป็นส่วนประกอบหลักของระบบ เป็นศูนย์กลางสำหรับตัวเชื่อมต่อทั้งหมดที่เพิ่มข้อมูลจากแหล่งข้อมูลแต่ละแห่ง ตัวเชื่อมต่อเหล่านั้นเรียกว่า โมดูล Memacs หรือ โมดูล สั้น
วาระการประชุมของคุณจะถูกเติมโดยอัตโนมัติด้วยรายการที่คล้ายกับตัวอย่างที่แสดงในภาพหน้าจอจากสมุดปกขาว:
คุณสามารถดูข้อมูลสาธิตบางส่วนได้โดยใช้โมดูลสำหรับ SMS, ชื่อไฟล์ datetestamps, Twitter, RSS, imap, phonecalls และ git
วิธีที่ง่ายที่สุดในการติดตั้ง Memacs คือการใช้ `pip`:
pip ติดตั้ง memacs [ทั้งหมด]
สิ่งนี้จะทำให้คุณได้รับชุดโมดูลทั้งหมดที่มีการพึ่งพาระบบของคุณทั้งหมด
หากคุณต้องการกำหนดการขึ้นต่อกันที่มีรายละเอียดมากขึ้น คุณสามารถใช้คุณสมบัติพิเศษตั้งแต่หนึ่งรายการขึ้นไป: gps
, rss
, ical
, lastfm
, battery
หรือ twitter
ตามตัวอย่างต่อไปนี้:
pip ติดตั้ง memacs [gps, rss]
ในกรณีที่คุณต้องการตั้งค่าสภาพแวดล้อม "แบบเก่า" คุณสามารถทำได้ด้วยตนเอง:
PYTHONPATH
PYTHONPATH=/path/to/memacs
pip ติดตั้ง -r ข้อกำหนด.txt
แนวคิดพื้นฐานของการใช้โมดูล Memacs มีดังต่อไปนี้:
docs
bin
ของ Memacs ด้วยอาร์กิวเมนต์ --help
เช่น bin/memacs_csv.py --help
ในบรรทัดคำสั่งของคุณเพื่อดูภาพรวมของอาร์กิวเมนต์ของโมดูลนี้Cc mp
ไปยังการกำหนดค่าของคุณ ( defun mp-update-memacs-photos ()
" An extra (i.e., not cron-scheduled) run of Memacs' photo module. "
( interactive )
( shell-command
( format " ~/org/update-memacs-photos.sh " )
)
)
( global-set-key ( kbd " C-c m p " ) 'mp-update-memacs-photos )
สคริปต์ที่เรียกต้องมีการจัดเตรียมบิตปฏิบัติการ พื้นหลังเพิ่มเติมของเทคนิคนี้รวบรวมโดย Mickey Petersen ใน Mastering Key Bindings ใน Emacs
โปรดตรวจสอบให้แน่ใจว่าคุณได้อ่านคำถามที่พบบ่อยและแนวทางปฏิบัติที่ดีที่สุด เนื่องจากมีคำแนะนำและเคล็ดลับมากมายเกี่ยวกับวิธีการตอบสนองความต้องการของคุณ และวิธีการเลือกการตั้งค่าที่เหมาะสม
ต่อไปนี้เป็นขั้นตอนการทำงานบางส่วนเพื่อให้คุณได้รับความรู้สึกเบื้องต้นว่า Memacs มอบความสนุกสนานทางดิจิทัลให้กับคุณได้อย่างไร
เมื่อมีการตั้งค่าโมดูล Memacs อย่างน้อยหนึ่งโมดูลและข้อมูลเริ่มไหลเข้าสู่ไฟล์โหมด Memacs Org ของคุณ คุณจะมีตัวเลือกมากมายในการใช้ Memacs สำหรับเวิร์กโฟลว์ส่วนตัวของคุณ
สิ่งพื้นฐานที่สุดที่เปลี่ยนแปลงกับ Memacs คือคุณอาจต้องการดูข้อมูลที่ประมวลผลโดย Memacs ในวาระการประชุมของคุณ:
คุณกำลังสร้าง (1) ไฟล์โหมด Org ที่อยู่ในไฟล์วาระการประชุมของคุณ หรือคุณกำลังสร้าง (2) ไฟล์เก็บถาวรที่มี stub ไฟล์โหมด Org ว่างไม่มากก็น้อยอยู่ในไฟล์วาระการประชุมของคุณ (ตามที่อธิบายไว้ในคำถามที่พบบ่อย)
ด้วยวิธีนี้ ข้อมูลการประทับเวลาที่สร้างขึ้นจะเข้าสู่วาระปกติของคุณ (1) หรือในโหมดขยายในโหมดเก็บถาวร (โดยการกด v A
ในวาระการประชุมของคุณ) ซึ่งจะแสดงเนื้อหาของไฟล์เก็บถาวรด้วย (2)
ฟีเจอร์ Memacs ที่ฉันใช้เป็นการส่วนตัวตลอดเวลาทำให้เกิดเวิร์กโฟลว์ที่ค่อนข้างซับซ้อนกว่าซึ่งมีข้อมูลพื้นฐานมาจากโมดูลประทับเวลาชื่อไฟล์ โมดูลจะจัดทำดัชนีไฟล์ทั้งหมดของฉันที่มี ISO-datestamps หรือ ISO-timestamps ในชื่อไฟล์เหมือนกับที่ addeddb ทำสำหรับ "locate"
ความสนุกเริ่มต้นขึ้นเมื่อโมดูลนี้ได้รับการตั้งค่าและสร้างดัชนีไฟล์ (ทุกคืน) ด้วยตัวอย่าง elisp ที่กล่าวถึงในเอกสารประกอบของโมดูล ฉันสามารถลิงก์ไปยังไฟล์ใดๆ เหล่านั้นได้เพียงแค่ระบุชื่อไฟล์เท่านั้น ลิงก์นี้จะไม่มีวันเสียหายเนื่องจากไม่สำคัญว่าไฟล์โฟลเดอร์ใดจะอยู่ในนั้นอีกต่อไป
โปรดดูการกำหนดค่า Emacs ของฉันและมองหา tsfile
(ไฟล์ประทับเวลา) ทั้งหมดซึ่งเป็นลิงก์ที่กำหนดเองของฉันสำหรับไฟล์เหล่านั้น
ฉันยังขยายขั้นตอนการทำงานนี้เพื่อให้ระบบบล็อกของฉันสามารถลิงก์ไปยัง tsfile:
รูปภาพที่ไม่ขึ้นกับตำแหน่งได้ สิ่งที่ยอดเยี่ยม
โมดูลนี้เป็นตัวอย่างสำหรับนักพัฒนา: docs/memacs_csv.org
โมดูลเหล่านั้นยัง ไม่ ได้นำไปใช้กับกรอบการทำงานแบบครบวงจรใหม่:
โมดูลต่อไปนี้เป็นเพียงแนวคิดคร่าวๆ เท่านั้น และอาจนำไปใช้ได้สักวันหนึ่ง (โดยคุณ):
ลองนึกภาพคุณใช้ Memacs อยู่แล้ว
เมื่อนึกถึงวันนั้น เมื่อคุณเข้าร่วมการพูดคุยที่น่าสนใจเกี่ยวกับ "Getting Things Done" (GTD) คุณจะเริ่มต้น GNU Emacs ของคุณด้วยไฟล์โหมด Org หลักของคุณ จากนั้นคุณไปที่มุมมองวาระการประชุมและเลือกวันที่เจาะจงนี้เมื่อสองสามเดือนก่อน
ตั้งแต่เวลา 14.00 น. ถึง 15.00 น. คุณได้กำหนดเวลาการพูดคุยนี้ไว้ในปฏิทินของคุณ จากนั้นคุณจะรู้ว่าภายในกรอบเวลานี้ ปรากฏว่าไฟล์ JPEG บางไฟล์ที่มีการประทับเวลา ISO 8601[1] ได้รับการจัดทำดัชนีโดยโมดูลเดียว (ชื่อไฟล์ประทับเวลาโมดูล)
รูปภาพนี้มีสไลด์ที่คุณพบว่าน่าสนใจและคุณถ่ายโดยใช้สมาร์ทโฟนที่ทันสมัยของคุณ ใครจะจำได้ว่าเคยถ่ายรูประหว่างพูดคุย?
สิบนาทีหลังจากการพูดคุย คุณได้เขียนข้อความสั้น ๆ บน Twitter โดยคุณกล่าวถึง URL ที่เป็นประโยชน์สำหรับผู้ติดตามของคุณ คราวนี้ URL เหล่านั้นก็มีประโยชน์สำหรับตัวคุณเองเช่นกัน! (โมดูล Twitter)
ในตอนเย็นของวันนั้น คุณจะเห็นอีเมล์เข้ามาจากผู้เขียนเสวนา ตอนนี้คุณจำได้ว่ามีการสนทนาดีๆ ในตอนท้ายของการพูดคุย โดยที่เขาสัญญากับคุณเกี่ยวกับข้อมูลเพิ่มเติมเกี่ยวกับเครื่องมือ GTD เล็กๆ น้อยๆ ดีๆ บนคอมพิวเตอร์ของเขา เยี่ยมมากที่คุณได้รับลิงก์ไปยังอีเมลนั้นด้วย หากไม่มี Memacs คุณอาจจำอีเมลนั้นไม่ได้อีกเลย (Maildir-โมดูล)
และในวันนี้ก็มีบุ๊กมาร์กบางส่วนที่คุณบันทึกไว้ เกือบทั้งหมดเกี่ยวข้องกับแนวคิดดีๆ ที่คุณได้รับจากการเสวนา GTD (โมดูลอร่อย)
เรื่องราวเล็กๆ นี้แสดงกรณีการใช้งานเพียงไม่กี่กรณีเท่านั้นที่โมดูลต่างๆ รวมแหล่งข้อมูลที่กำหนดและข้อมูลเข้าด้วยกันเพื่อให้มุมมองโดยรวมที่เกี่ยวข้องกับกิจกรรม เนื่องจากโหมดองค์กรมีลิงก์ จึงไม่จำเป็นต้องทำซ้ำข้อมูลจริง (ยกเว้นข้อมูลเมตาที่แยกโดย Memacs) อีเมล ไฟล์ บุ๊กมาร์ก และอื่นๆ มีการเชื่อมโยงกันแทนที่จะคัดลอก
[1] ด้วยจุดแทนที่จะเป็นโคลอน - เพียงเพราะข้อจำกัดโบราณของระบบไฟล์ที่ใช้ Microsoft เช่น «2011-02-14T14.35.42 ideas.jpg»
ในปี 1945 Vannevar Bush ได้เขียนบทความชื่อดังเรื่อง As We May Think ซึ่งเขาได้พัฒนาแนวคิดในการมี "เครื่องขยายหน่วยความจำ" ที่เรียกว่า Memex Memex สามารถจัดเก็บจดหมาย หนังสือ และข้อมูลอื่นๆ ทั้งหมดที่เกี่ยวข้องกับบุคคลได้
นอกเหนือจากการมองเห็นเทคโนโลยีหลายอย่าง เช่น ไฮเปอร์เท็กซ์แล้ว เขายังกำหนดอุปกรณ์ที่เก็บข้อมูลเมตาและข้อมูลทั้งหมด และจัดเตรียมเส้นทางเชื่อมโยงในการเข้าถึงข้อมูล
ในทศวรรษสุดท้ายของศตวรรษก่อนหน้า Microsoft Research มีโครงการวิจัยที่ส่งผลให้เกิด MyLifeBits ซอฟต์แวร์นี้พยายามจัดเก็บข้อมูลแต่ละอย่างของผู้ใช้ เช่น เอกสารสำนักงาน ภาพหน้าจอ ชื่อของหน้าต่างที่ใช้งานอยู่บนคอมพิวเตอร์เดสก์ท็อป และแม้กระทั่งถ่ายภาพโดยอัตโนมัติ (SenseCam) คำนี้ไม่ส่งผลให้มีผลิตภัณฑ์ซอฟต์แวร์ (เปิด) ใด ๆ เบลล์และเจมเมลล์เขียนหนังสือชื่อ "Total Recall"
โครงการ Memacs พยายามที่จะนำแนวคิดของวิสัยทัศน์ของ Vannevar Bush ไปประยุกต์ใช้ด้วยโอเพ่นซอร์สและมาตรฐานแบบเปิด ดังนั้นชื่อ "Memacs" จึงเป็นการผสมผสานระหว่าง "GNU Emacs" และ "Memex" อย่างชัดเจน
Memacs ใช้โหมด GNU Emacs Org เพื่อแสดงภาพและเข้าถึงข้อมูลที่แยกโดยโมดูล Memacs: การใช้แท็ก การประทับเวลา การค้นหาข้อความแบบเต็ม และอื่นๆ GNU Emacs สามารถรับมุมมองที่แตกต่างกันได้ มุมมองที่สำคัญที่สุดน่าจะเป็นมุมมองวาระการประชุมซึ่งคุณสามารถดูสิ่งที่เกิดขึ้นในระหว่างวัน/สัปดาห์/เดือนที่ระบุตามกรอบเวลาที่เลือก แต่คุณสามารถได้รับมุมมองอื่นได้เช่นกัน ตัวอย่างเช่น คุณสามารถเลือกสร้างผลการค้นหาแบบย่อโดยใช้ชุดแท็กบูลีน
ที่เกี่ยวข้องกับ Memacs ผู้ก่อตั้งโครงการได้พัฒนาซอฟต์แวร์การวิจัยที่เรียกว่า tagstore ระบบนี้อนุญาตให้ผู้ใช้จัดเก็บไฟล์ (ในเครื่อง) โดยใช้แท็กโดยไม่มีลำดับชั้นของโฟลเดอร์ ในฐานะที่เป็นส่วนขยายตามธรรมชาติ tagstore กำหนดเป้าหมายการเข้าถึงแบบเชื่อมโยงสำหรับไฟล์ (ในเครื่อง) คุณอาจต้องการตรวจสอบ tagstore ด้วย Memacs และ tagstore เป็นการผสมผสานที่มีประโยชน์มาก
หากคุณต้องการทราบวิธีจัดระเบียบไฟล์ดิจิทัลอย่างมีประสิทธิภาพด้วยวิธีที่เรียบง่ายและเป็นอิสระจากระบบปฏิบัติการ โปรดอ่านบล็อกโพสต์นี้จาก Karl มันอาจให้แนวคิดเกี่ยวกับขั้นตอนการทำงานของคุณเช่นกัน
คาร์ลยังเขียนเอกสารไวท์เปเปอร์เกี่ยวกับ Memacs ซึ่งอธิบาย Memacs จากมุมมองของนักวิทยาศาสตร์
หากคุณต้องการมีส่วนร่วมในโปรเจ็กต์สุดเจ๋งนี้ โปรดแยกและสนับสนุนหรือเขียนโมดูลเพิ่มเติม!
ดู docs/FAQs_and_Best_Practices.org สำหรับข้อมูลการพัฒนาเพิ่มเติม
เรามั่นใจว่ามีไอเดียเจ๋งๆ มากมาย สำหรับโมดูลอื่นๆ ที่มีอยู่! นี่เป็นเพียงจุดเริ่มต้น!
Memacs ได้รับการออกแบบโดยคำนึงถึงความพยายามเพียงเล็กน้อยสำหรับโมดูลใหม่
เรากำลังใช้ Python PEP8 และ Test Driven Development (TDD)
Memacs ได้รับอนุญาตภายใต้ใบอนุญาต GPLv3