مقدمه
در دنیای پرسرعت امروزی، روزمرهنویسی برایم یک ترمز دستی کشیدن و لذت بردن از روزها و یک روش قدرتمند برای ثبت لحظهها، افکار و تجربیاتم است. گزارشنویسیهای دورهای یک ابزار بسیار خوب و کاربردی برای خودشناسی و تعیین مسیر برای آینده است. شکستها و موفقیتها خیلی واضحتر میشوند و میشود راحتتر این موضوع را دید، تصمیم گرفت و تغییر کرد.
روزمرهنویسی کمک میکند تا با ثبت دقیق و منظم رویدادها، اهداف و انگیزهها، به یک درک عمیقتر از زندگی شخصی و حرفهای خود دست یابیم. نوشتن درباره تجربیات و احساسات، فرصتی برای ابراز و پردازش عمیقتر افکار فراهم میآورد، که این امر به نوبه خود، میتواند به بهبود زندگی فردی و مدیریت تنشهای روزمره کمک کند. همچنین، روزمرهنویسی به تقویت مهارتهای نوشتاری و خلاقیت فردی نیز کمک میکند، چرا که نویسنده را به فکر کردن عمیقتر و ایجاد ارتباطات جدید بین ایدهها تشویق میکند.
در دورههای مختلف از ابزارهای متنوعی برای یادداشتبرداری روزانه استفاده کردم. در این میان تنها نرمافزاری که توانستم بیش از ۳ سال با آن گزارشنویسی دورهای مداوم داشته باشم نرمافزار ابسیدین (Obsidian) بود. ابسیدین برای من یک آچار فرانسه بود. هر آنچه میخواستم را توانستم در آن پیاده سازی کنم و در یادداشتهای روزانه به آنها اشاره کنم.
مشکل اصلی که با یادداشتهای دورهای در این نرم افزار داشتم تقویم خورشیدی بود. همهجای دنیا سیستم تقویمی دیگری دارند و شاید از معدود شهروندانی در دنیا باشیم که از تقویم میلادی برای امور روزانهشان استفاده نمیکنند و تقویم خودمان را داریم. حتما خوبیها و بدیهایی دارد و که در این مطلب جای پرداختن به آن نیست اما در زندگی شخصیام این موضوع برایم جذاب تر بود که یادداشتهای دورهای ام را به تقویم شمسی بنویسم. بعد از مدتی حس کردم روزها برایم با تقویم شمسی معنادارترند.
ابتدای اسفند ۱۴۰۲ تصمیم به توسعه گرفتم و یک هفتهای توانستم نسخه اولیه افزونه تقویم فارسی ابسیدین را توسعه دهم. در پست دیگری در مورد توسعه پلاگین برای ابسیدین توضیحات بیشتری را ارائه خواهم داد و در این مطلب قصد دارم درباره ویژگیهای افزونه تقویم فارسی ابسیدین توضیحاتی را ارائه کنم.
اول از همه به این سوال پاسخ میدهم که چرا عنوان پلاگین را تقویم فارسی گذاشتم و نه تقویم خورشیدی. راستش شاید مهم ترین علتش این باشد که احساس کردم کاربر ایرانی وقتی میخواهد در مخزن افزونههای ابسیدین جستجو کند عبارت Persian را جستجو میکند و با این عنوان راحتتر به افزونه دسترسی خواهد داشت. دور از واقعیت هم نیست که تقویم خورشیدی بیشتر مورد استفاده کشورهای فارسی زبان است اما احتمالا عبارت Persian دقیقا به تقویم خورشیدی اشاره نمیکند و در توضیحات به آن اشاره کردهام و لازم دانستم پیش از هر موضوعی آن را توضیح دهم.
– رایگان است: افزونه کاملا رایگان است و رایگان خواهد بود. شایسته ندیدم نرم افزاری که انبوهی از امکانات را رایگان در اختیار کاربرانش قرار داده افزونهای کاربردی برای ایرانیان بنویسم که نیازمند پرداخت هزینه باشد. ابسیدین هر چه بیشتر استفاده شود و زیست بومش توسعه پیدا کند به نفع همه ماست. امیدوارم دیگران هم به این مسیر پایبند باشند.
– کاربر باید قدرت انتخاب داشته باشد: اگر فردی بخواهد فقط و فقط تقویم فارسی را داشته باشد بدون هیچ گزینه اضافهای باید این قابلیت در افزونه موجود باشد. بنابراین هر قابلیتی که به افزونه اضافه شده است این نکته در آن رعایت شده است. شما باید بتوانید تقویم را در سادهترین حالت ممکن و همزمان در کاملترین حالت آن در اختیار داشته باشید.
– منبعباز است: باز بودن منبع افزونه فواید زیادی دارد که مهمترینش اعتماد است، روزنوشتها تکه یادداشت های مهمی هستند و برای اینکه کاربران بتوانند اعتماد کنند منبع را باز کردم تا اعتمادشان جلب شود. فایده دیگر آن هم توسعه دیگران است. برنامه نویسی شغل اصلی بنده نیست و حتما برنامه نویسان قویتر میتوانند ایده های بهتری را پیاده کنند یا حتی اگر روزی من دیگر فرصت توسعه نداشتم افراد دیگری بتوانند مخزن دیگری بسازند و افزونه را توسعه دهند.
– اختراع دوباره چرخ ممنوع: اگر افزونهای بهتر کار میکند و میتوان با آن هماهنگ شد تلاش برای نوشتن دوباره آن نمیکنم. مثلا پیاده سازی ویژگی تمپلیت کار پیچیده ای نیست ولی وقتی افزونه قوی در این زمینه وجود دارد بهتر است با آن هماهنگ شد.
– استفاده از هوش مصنوعی: بسیاری از کدهای افزونه را ChatGPT نوشت. من بیشتر ایده داشتم و پرامپت مینوشتم و تست میکردم. بعدا فرصت پیش بیاید باید یک بار کدها تمیز شوند.
ویژگیهای افزونه
این افزونه الهام گرفته شده از افزونه Calendar ابسیدین است. تلاش کردم مهمترین ویژگیهای افزونه تقویم را استخراج کنم و آنها را در پلاگین تقویم فارسی ابسیدین بیاورم. اگر استفادهکننده از آن پلاگین باشید قطعا متوجه شباهت آن خواهید شد. برای نصب آن میتوانید روی این لینک کلیک کنید. طبیعتا شما باید نرم افزار Obsidian را نصب داشته باشید.
یادداشتهای دورهای
قابلیت اصلی این افزونه ایجاد یادداشتهای دورهای است. تقریبا هر دوره زمانی معناداری در افزونه قابل ردیابی و پیگیری است و تا حد توان تلاش کردم سهولت دسترسی را در رابط کاربری رعایت کنم. روز، هفته، ماه، فصل و سال دورههای زمانی معنادار در این افزونه هستند. شما با کلیک بر روی هر دوره زمانی یادداشت مرتبط با آن را میتوانید ایجاد کنید.
یادداشت های روزانه
روزها کوچکترین واحد زمانی است که در افزونه وجود دارند. اگر کنترل روزهای خودمان را در دست بگیریم میتوانیم واحدهای زمانی بزرگتر را هم مدیریت کنیم. در افزونه میتوانید با کلیک بر روی هر روز یک یادداشت برای آن تولید کنید و روزنوشت بنویسید. در روزنوشت تلاش کنید تسکها را پیگیری کنید و شرحی از روزهایتان بنویسید. در بخش گزارشنویسی روزانه یادداشت «گذار یا گزار» محمدرضا شعبانعلی نکات خوبی در این زمینه که چه روشهایی را برای روزنوشتهایش داشته است نوشته است که توصیه میکنم این یادداشت را مطالعه کنید.
یادداشتهای هفتگی
به نظرم بهترین واحد زمانی برای انجام تسکها هفتهها هستند. برخی تسک ها بیش از یک روز از ما زمان میبرند و میتوان با یک برنامهریزی دقیقتر با یادداشتهای هفتگی آنها را مدیریت کرد. با کلیک بر روی ردیف هفتهها میتوانید یک یادداشت با عنوان شماره هفته داشته باشید.
یادداشتهای ماهانه
به نظرم بهترین روش ارزیابی شخصی ماهها هستند. در هر ماه ما معمولا ۴ هفته داریم و اگر تسکهای بزرگی را هم در نظر گرفته باشیم بالاخره در یک ماه قابل انجام هستند و در زندگیام کمتر پیش آمده است تسکی بیش از یک ماه به صورت فعالانه بر روی آن وقت گذاشته باشم. یادداشت ماهانه منطق بسیار خوبی برای حساب کشیدن از خودمان است. با کلیک بر روی ماه در افزونه میتوانید یادداشتهای ماهانه خودتان را مدیریت کنید.
یادداشتهای فصلی
نمایش فعالیتهایی که در ۳ ماه قرار است انجام دهیم بهترین ابزار برای تصمیمگیری در زندگیمان است. اگر برنامهریزی فصلی داشته باشید میتوانید ماهها، هفتهها و روزهای خودمان را مدیریت کنیم. در تنظیمات افزونه آن را میتوانید فعال کنید و بر روی هر فصل کلیک کنید و یادداشت مرتبط با آن فصل را مرور کنید.
یادداشتهای سالانه
یادداشت سالانه طولانی ترین واحد زمانی در پلاگین است. داشتن یادداشت سالانه یک نگاه کلی به سالهایی که در اختیار داریم و میتوانیم با یک نگاه اهدافی که اول سال نوشتیم را چقدر محقق کردیم. با کلیک بر روی سال یادداشت سالانه باز میشود.
هماهنگی با افزونه Templater
افزونه Templater جزو پر دانلودترین پلاگینهای ابسیدین است و با استفاده از آن میتوان نوشتههای جدید تولید کرد. برای اینکه بتوانید قالب مشخصی را برای نوشتهها مشخص کنید در بخش تنظیمات افزونه گزینه Trigger Templater on new file creation را فعال کنید. پس از فعالسازی این گزینه میتوانید در بخش Folder Templates مشخص کنید که فایلهای روزنوشت و هفته نوشت و … با چه تمپلیتی ساخته شوند. تمپلیتر قابلیتهای بیشتری دارد که در پست دیگری آن را توضیح خواهیم داد.
پیشنهاددهنده یادداشتهای زمانی
یکی از قابلیتهای فوق العاده جذاب در ابسیدین، سرعت نوشتن و لینک کردن به یادداشتهای دیگر است. تقریبا تمام یادداشتهایم در ابسیدین را تلاش میکنم به یادداشتهای زمانی متصل کنم و سرعت این لینک کردن برایم لذت نوشتن را دوچندان میکند. برای همین در افزونه قابلیت پیشنهاددهنده را فعال کردم میتوانید در افزونه با تایپ کردن عبارتهای زیر به یادداشتهای خودتان ارجاع دهید.
- روزهای جاری به صورت `امروز`، `دیروز`، `فردا`، `پریروز` و `پسفردا` (هماهنگ با تنظیم میلادی و خورشیدی)
- روزهای هفته:روز هفته(روز هفته جاری)، روز هفته بعد، روز هفته قبل (هماهنگ با تنظیم میلادی و خورشیدی)؛ نکته: اگر مثلا دوشنبه باشد و شما یکشنبه را انتخاب کنید یکشنبه بعدی انتخاب میشود. یکشنبه ای که گذشته است در تعریف این افزونه یکشنبه گذشته است و باید از عبارت یکشنبه قبل استفاده کنید.
- هفتهها به صورت `این هفته`، `هفته قبل` و `هفته بعد`
- ماهها به صورت `این ماه`، `ماه قبل` و `ماه بعد`
- – فصلها به صورت `این فصل`، `فصل قبل` و `فصل بعد`
- – سالها به صورت `امسال`، `سال قبل` و `سال بعد`
یک نکته مهم: وقتی لینک میکنید حواستان باشد که فایل را از طریق افزونه پیش از آن ایجاد کنید. یا حتی اگر لینک کردید نباید از طریق لینک ایجاد شده روی آن کلیک کنید و فایل ایجاد شود. ابسیدین APIی برای این موضوع تعبیه نکرده است و صرفا باید خودتان حواستان باشد.
غنیتر کردن یادداشتها با {{عبارتهای معنادار}}
برای خودم یکی از مهمترین ایدههایی که برای توسعه افزونه داشتم غنیتر کردن یادداشتهایم بود. میخواستم در یادداشتها ارتباط خوبی به هفته و ماه و فصل و سال بدهم و در خروجی که در آن یادداشتها میگیرم این ارتباط معنادار بود. برای همین عبارتهای معنادار را در افزونه قرار دادم. نحوه کار بسیار ساده است. در فایل تمپلیت برای یادداشتهای زماندار عبارتهای زیر را اگر درج کنید زمان مرتبط با آن درج میشود.
- {{امروز}}: تاریخ شمسی امروز را در یادداشت قرار میدهد. اگر میخواهید بدانید هر روز چه یادداشتهایی ایجاد کردید آن را در همه یادداشتهایتان قرار دهید. (توصیه میکنم حتما این کار را انجام دهید!)
- {{این روز}}: بر اساس تاریخ روزنوشت تاریخ مرتبط با آن روز به شمسی را در فرمت مثلا ۱۴۰۳-۰۲-۰۱ بر میگرداند. اگر تاریخ افزونه را میلادی گذاشتهاید میتوانید با این عبارت تاریخ شمسی هر روزنوشت را در آن درج کنید.
- {{روز هفته}}: به شما عنوان امروز را برمیگرداند. اگر میخواهید بدانید هر یادداشت مرتبط با کدام روزهفته است میتوانید این را در متن یادداشت قرار دهید.
- {{این روز هفته}}: روز هفته روزنوشت را به شما برمیگرداند.
- {{هفته}}: شماره هفته را در فرمت مثلا ۱۴۰۲-W3 امروز را به شما برمیگرداند. اگر میخواهید بدانید در کدام هفته این یادداشت تولید شده این را در یادداشتهایتان قراردهید.
- {{این هفته}}: شماره هفته مرتبط با روزنوشت را به شما برمیگرداند.
- {{ماه}}: شماره ماه را فرمت ۱۴۰۳-۰۲ برمیگرداند. اگر میخواهید بدانید در کدام ماه این یادداشت تولید شده میتوانید این عبارت را در یادداشتهایتان قرار دهید.
- {{این ماه}}: شماره ماه هر روزنوشت را برمیگرداند.
- {{فصل}}: شماره فصل را در فرمت ۱۴۰۳-Q1 برمیگرداند. اگر میخواهید بدانید این یادداشت در کدام فصل تولید شده میتوانید این را در یادداشتهایتان قرار دهید.
- {{این فصل}}: شماره فصل مرتبط با روزنوشت را برمیگرداند.
- {{سال}}: سال را در فرمت ۱۴۰۳ برمیگرداند. اگر میخواهید بدانید این یادداشت در کدام سال تولید شده میتوانید این عبارت را در نوشتههایتان قرار دهید.
- {{این سال}}: سال مرتبط با روزنوشت را برمیگرداند.
- {{روزهای گذشته}}: تعداد روزهای گذشته از ابتدای سال را بر اساس روزنوشت به شما برمیگرداند.
- {{روزهای باقیمانده}}: روزهای باقیمانده تا پایان سال را بر اساس روزنوشت به شما برمیگرداند.
- {{اول هفته}}: بر اساس تنظیمات شما روز اول هفتهنوشت را به شمسی یا میلادی برمیگرداند.
- {{آخر هفته}}: بر اساس تنظیمات شما روز آخر هفتهنوشت را به شمسی یا میلادی برمیگرداند.
- {{اول ماه}}: بر اساس تنظیمات شما روز اول ماهنوشت را به شمسی یا میلادی برمیگرداند.
- {{آخر ماه}}: بر اساس تنظیمات شما روز آخر ماهنوشت را به شمسی یا میلادی برمیگرداند.
- {{مناسبت}}: بر اساس تنظیمات شما مناسبتهای مرتبط با آن روز را به شما برمیگرداند.
نکته مهم: این قابلیت پس از ایجاد شدن فایل توسط افزونه و فعال شدن قالب توسط افزونه Templater عبارت معنادار را شناسایی و جایگزین میکند. در حالتی که از Command Pallete قالبی بسازید این افزونه کار نمیکند.
نمایش نوشتهها به تقویم میلادی
یکی از چالشهای توسعه این افزونه این بود که احساس میکردم اگر بخواهم تمام افزونههایی که در ابسیدین به نحوی به زمان ربط دارند را با این افزونه هماهنگ کنم یک دنیا وقت و انرژی از من میگرفت و هر تغییری در افزونههای دیگر نیازمند رسیدگی بود. با همفکری که یکی از کاربران افزونه در گیتهاب مطرح کرد این ایده به ذهنم رسید که افزونه را با تقویم میلادی هماهنگ کنم. برای همین به این نتیجه رسیدم عنوان روزنوشت را اگر به میلادی بنویسم با تمام افزونهها همخوانی ایجاد میشود. برای همین این قابلیت را در افزونه قرار دادم که بتوانید نامگذاری روزنوشت ها به تقویم میلادی صورت پذیرد. با همین تغییر راحت حالا افزونه تقویم فارسی با همه افزونههایی که به نحوی با تاریخ در ارتباطاند هماهنگ میشود. توصیهی شخصیام این است اگر از ابسیدین به صورت حرفهای استفاده میکنید و میخواهید افزونههای بیشتری داشته باشید روزنوشتها را به صورت میلادی ذخیرهسازی کنید و با {{این روز}} میتوانید تقویم شمسی را در روزنوشت داشته باشید.
نمایش رویدادهای تقویم رسمی ایران
ما ایرانی هستیم و بالاخره اینکه یک روز تعطیل است یا خیر در روزمرگی ما اثرگذار است. ما انسانها در گردش ایام و گذر سالها برای خودمان مناسبتهایی را انتخاب کردهایم. این مناسبتها شکستن روزمرگی است و نشان دادن آنها در تقویم به نظرم ارزشمند است. برای همین مناسبتهای تقویم را اضافه کردم و حالا میتوانید در کنار روزنوشتها مناسبتهای تقویم را داشته باشید. با بردن موس روی هر روز میتوانید مناسبت آن روز را ببینید. یک عبارت معنادار هم برای آن در نظر گرفتم. {{مناسبت}} مناسبتهای آن روزنوشت را به شما برمیگرداند. تنظیمات زیر برای تنظیم کردن رویدادهایی که علاقه دارید را میبینید. سه تقویم رسمی و باستانی و هجری قمری در افزونه تعبیه شده است. در تنظیمات میتوانید آن ها را فعال یا غیرفعال کنید و بر اساس تنظیماتی که در افزونه مشخص میکنید رویدادها به شما نمایش داده میشود.
چطور میتوانم این افزونه را نصب کنم؟
برای نصب این افزونه اول لازم است نرم افزار ابسیدین را دانلود کنید. پس از نصب وارد تنظیمات شده و Turn on community plugins را فعال کنید. بعد از آن روی گزینه Browse کلیک کنید و عبارت Persian Calendar را جستجو و نصب کنید. در تنظیمات ابسیدین تب Persian calendar برای شما فعال میشود و میتوانید قابلیتهای افزونه را تنظیم کنید.
قالبهای پیشنهادی
قبل از پیشنهاد دادن هر قالبی لازم میدانم چند نکته را یادآور شوم:
– از قالب کپی نکنید: قالبها بیشتر از آنکه برای کپی کردن باشند برای ایده گرفتن ساخته شدهاند. نیازهای خودتان را در نظر بگیرید و یک قالب از صفر برای خودتان بنویسید. قالبها عموما مطابق نیاز سازنده قالب است تا شما. بنابراین دنبال یک قالب همه چیز تمام نباشید و خودتان قالب زندگی خودتان را ترسیم کنید.
– یک بار کل فرایند را پیاده سازی کنید: تلاش کنید یک بار کل مسیر را برای خودتان پیاده سازی کنید. مثلا یادداشتهای روزانه چطور در یادداشتهای هفتگی دیده شوند و یادداشتهای هفتگی را در ماهانه آورد. با این تمرین قالبها دستتان میآید. خروجی اثرگذاریاش را هم مشخص کنید. مثلا قرار است با دنبال کردن یک عادت در یادداشتهای روزانه به یک نتیجه برسید. آن نتیجه را یک جایی ترسیم کنیم و دنبال کنید.
– تغییر و بروزرسانی قالبها خوب است: هیچ اشکالی ندارد که فایلها شبیه یکدیگر نباشند. این مسیر برنامه ریزی شماست و خروجی این روش باید به بهبود مسیر برنامه ریزی شما کمک کند و نتیجهاش بهبود زندگی فردی شماست. از وسواسهای بیمورد بپرهیزید و اگر فکر کردید تسلسل نوشتههای روزمرهتان بهم میریزد بدانید دچار کمالگرایی شدهاید. مثلا هر شش ماه قالبها را بروزرسانی کنید. مهم خروجی است که در زندگی شما دارد.
– حواستان به تله مستندسازی همهچیز باشد: یکی از تلههای مهم در این فرایند این است که درگیر مستندسازی همه چیز شوید. همه موضوعات را نوشتن و ثبت و ضبط کردن وقت زیادی میگیرد و فایدهای هم ندارد. فقط چیزهای مهم را ثبت کنید. چیزهایی که میدانید بعدا به کارتان میآید. جلسات، ایدهها، تسکها و پروژهها و دانش معمولا ارزش مستندسازی دارند که اگر فرصت شد بیشتر در مورد آنها در کارفکر مینویسم.
با طرح نکات فوق چند قالب پیشنهادی در انجمن به اشتراک خواهم گذاشت. اگر مایل بودید میتوانید در انجمن قالب خودتان را به اشتراک بگذارید.
مسیر آینده توسعه و مشارکت
این افزونه برای استفاده شدن نوشته شده است. هر چه شما بیشتر از آن استفاده کنید خوشحالتر میشوم. اگر در حین استفاده از افزونه ایدهی تکمیلی به ذهنتان رسید در بخش Issues در گیتهاب مطرح کنید. تلاش میکنم آنجا را پاسخ دهم و اولویتبندی برای توسعه داشته باشم.
- ۱ نرم افزار ابسیدین (Obsidian) چیست؟
- ۲ چطور در ابسیدین یادداشتهای خود را دستهبندی کنیم؟
- ۳ چطور قابلیت سینک در ابسیدین را با کمترین هزینه فعال کنیم؟
- ۴ راهنمای استفاده از افزونه Templater در ابسیدین؛ چطور در ابسیدین حرفهای یادداشت بسازیم؟
- ۵ معرفی پلاگین کاربردی در ابسیدین؛ QuickAdd راهکاری برای مدیریت خودکار یادداشتها
- ۶ افزونه تقویم فارسی ابسیدین؛ بهترین ابزار گزارشنویسی روزانه برای یک ایرانی