TGViewer
LinFAQ LinFAQ @linfaq · 277 subscribers
Post #218 481
#روزی_یک_نکته با دلاتو

دسته‌بندی: #آموزشی #کاربردی #emacs

راجب hook و فعال کردن لاین نامبر در مد های مورد نیاز داخل ایمکس:
وقتی میخوان یه فانکشن بعد از یه رویدادی
(مثل اجرای یه فانکشن دیگه یا مد خاصی یا...)

اجرا بشه، از hook استفاده میکنن
(یا حداقل برداشت من از hook اینطوری بوده).


یه نمونه هم ازش بخوام بگم این هست:
(add-hook 'prog-mode-hook 'display-line-numbers-mode)

که  در واقع داره میگه اگه major mode بافر جزو prog-mode بود، بیاد لاین نامبر رو هم فعال کنه.
اینطوری داخل چیز هایی مثل dired که مدیر فایل هست یا کلا هر جایی که کد نیست، لاین نامبر رو هم نمیبینیم.

کلا major mode هایی که زبان برنامه نویسی هستن توی این دسته قرار میگیرن (در کل مفهوم major mode مشابه file type داخل (نئو)ویم هست).


حالا کد زیر رو داریم:
(use-package display-line-numbers
  :hook org-mode prog-mode
  )

تو اینجا داریم از use-package استفاده میکنیم، برای همین اسم پکیجی که فانکشن display-line-numbers-mode شامل میشه رو به کار میبریم، بعد بهش میگیم که تو کدوم پکیج ها قراره لاین نامبر نمایش داده بشه، اینطوری ۲ سود داره:
1- به جای اسم فانکشن ها، اسم پکیج ها رو به کار میبریم که عموما کوتاه تره.
2- همونطور که میبینید میتونم با یه بار نوشتن hook، داخل هر چند مدی که میخوام لاین نامبر رو نمایش بدم. مثلا اینجا علاوه بر prog-mode، داخل فایل هایی که org هستن هم لاین نامبر نمایش داده میشه.
راجب use-package بخوام مختصر بگم، برای کانفیگ ساده تر ازش استفاده میشه و پیش فرض توی نسخه های جدید ایمکس نصب هست.

جهت فهمیدن این که function یا variable مربوط به کدوم پکیج هست میتونید کی بایند C-h f یا C-h v رو بسته به function یا variable بودن بزنید و بعد اسمش رو وارد کنید، همون چند خط اول نوشته که برای کدوم پکیج هست، میتونید از طریق پسوند el تشخیص بدید.


اگه توی نکته ایرادی بود پیشاپیش عذر میخوام، به دلیل آشنایی کمم با ایمکس هست چون کلا یه هفته هست که دارم ازش استفاده میکنم و تو این یه هفته هم شاید بیشتر از ۱۰ ساعت ازش استفاده نکردم، ضمنا خوشحال میشم اگه خواستید ایراد رو اصلاح و بیان کنید.

در انتها اگه این مطلب براتون مفید بود و دلتون خواست، لطفا برای شادی روح یحیی تجری فرزند حسین یه فاتحه بخونید.

🔅@LinFAQ
🔅@LinAcademy
www.gnu.org Hooks (GNU Emacs Manual) Next: Local Variables, Previous: Examining and Setting Variables, Up: Variables [Contents][Index]
  • ❤ 1
More from @linfaq
  1. Apr 11, 2026#روزی‌_یک_نکته با پاکروح دسته‌بندی: #آموزشی #کاربردی #مرورگر #امنیت امروز یه چیز باحال یاد…
  2. Oct 19, 2025#روزی_یک_نکته با پاکروح دسته‌بندی: #آموزشی #کاربردی #گرافیک #لینوکس امروز یه اتفاق جالب بر…
  3. Jul 22, 2025#روزی_یک_نکته با حسن دسته‌بندی: #آموزشی #کاربردی #کرنل #لینوکس امروز اومدیم یه مشکل کوچیک…
  4. Mar 20, 2025😁😁 دوباره یک سال دیگه رو در کنار هم بودیم 🤩🥳 سالی که گذشت سالی پر از ماجرا های عجیب و…
  5. Sep 19, 2024#روزی_یک_نکته با دلاتو دسته‌بندی: #آموزشی #کاربردی #fzf #bash خب بریم 5 تا فانکشن bash ردی…
  6. Sep 17, 2024#روزی_یک_نکته با دلاتو دسته‌بندی: #آموزشی #کاربردی #emacs #vterm #shell خب برای اینکه bash…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →