چرا ویرایش مستقیم فایل اشتراک جواب نمیدهد
اشتراک در هر بهروزرسانی بهطور کامل جایگزین میشود و هر خطی که دستی نوشته باشید از بین میرود. راهحل Clash Verge این است که تغییرهای شما را در لایهای جدا نگه میدارد و هنگام ساخت پیکربندی نهایی آن را ادغام میکند؛ اشتراک هر چند بار هم بهروز شود فرقی نمیکند.
هنگام ساخت مورد جدید در صفحه Profiles میتوانید Merge (قطعه YAML) یا Script (جاوااسکریپت) را انتخاب کنید. بعد آن را از کارت همان پروفایل متصل کنید، یا از Merge و Script سراسری استفاده کنید که روی همه پروفایلها اثر میگذارند.
راه بازگشت را باز بگذارید
پیش از اتصال افزونه، نام پروفایلی را که الان درست کار میکند یادداشت کنید. با قطع اتصال افزونه بلافاصله به همان وضعیت برمیگردید.
هر کدام برای چه کاری مناسب است
- 1
Merge: یک قطعه YAML
کلیدهای سطح بالا مثل mixed-port، mode و log-level مستقیم بازنویسی میشوند. برای قوانین سه کلید اختصاصی وجود دارد: prepend-rules در ابتدا درج میکند، append-rules به انتها اضافه میکند و filter-rules خطوط منطبق را حذف میکند. اگر میخواهید قوانین خودتان اولویت داشته باشند از prepend-rules استفاده کنید.
- 2
Script: یک تابع main
امضای تابع main(config) است. کل شیء پیکربندی را میگیرید، تغییر میدهید و همان شیء کامل را برمیگردانید. برای تغییرهای شرطی و انبوه مناسب است، مثلاً افزودن interval و tolerance به همه گروههای url-test یا فیلترکردن گرهها بر اساس کلیدواژه.
- 3
ترتیب اجرا
اول متن اشتراک، بعد Merge و در آخر Script. اگر چند افزونه متصل باشد به همان ترتیبی که چیدهاید اجرا میشوند و آخرین تغییر روی هر فیلد برنده است.
نتیجه ادغام را بررسی کنید
فایلی که از منوی پروفایل باز میشود متن خام اشتراک است، نه نتیجه ادغام. برای دیدن پیکربندی واقعی در حال اجرا از گزینه نمایش پیکربندی اجرایی استفاده کنید؛ تغییرهای Merge و Script باید همانجا دیده شوند. اگر نبودند، معمولاً تورفتگی YAML اشتباه است و در نخستین صفحه بخش Logs یک خطای تجزیه با شماره خط میبینید.
- هرگز MATCH را در prepend-rules ننویسید؛ همه قوانین بعدی را میبلعد
- Script باید کل شیء config را برگرداند، نه بخشی از آن
- پس از ذخیره، پیکربندی دوباره ساخته و داغ بارگذاری میشود و نیازی به راهاندازی مجدد برنامه نیست
پرسشهای رایج
در Merge بخش dns نوشتم ولی اثری نداشت. چرا؟
کلید بازنویسی DNS را در برنامه بررسی کنید. تا وقتی روشن است، Clash Verge بخش dns فایل پیکربندی را با تنظیمات خودش جایگزین میکند. آن را خاموش کنید تا نوشته شما اعمال شود.
میشود چند Merge را همزمان وصل کرد؟
بله. افزونهها یک زنجیرهاند و به ترتیب چیدمان اجرا میشوند. بهتر است هر Merge فقط یک کار انجام دهد، مثلاً یکی برای قوانین و یکی برای پورت و DNS، تا ردیابی مشکل ساده باشد.