SGMLDIFF(1) SGMLDIFF(1)

sgmldiff - یافتن تفاوت‌ها در نشانه‌گذاری دو فایل SGML

sgmldiff [ options ... ] file1 file2 [ -a | --attributes
| -c [ attributes | nesting | textpos ] | --context [ attributes | nesting | textpos ]
| -s | --statistics
| -h | --help
| -v | --version ]

این اسکریپت perl امکان تعیین تفاوت‌های ساختاری میان دو فایل SGML را فراهم می‌کند. این ابزار بدون در نظر گرفتن محتوای میان برچسب‌ها، فایل‌ها را مقایسه می‌کند تا تنها بر روی نشانه‌گذاری تمرکز کند. خروجی آن شبیه به diff(1) است.

کاربرد معمول sgmldiff، مقایسهٔ یک فایل SGML با ترجمهٔ آن به زبانی دیگر است. اگر ترجمه به‌درستی انجام شده باشد، sgmldiff بدون یافتن هیچ تفاوتی در نشانه‌گذاری به پایان می‌رسد.

نمونه‌ای از فراخوانی معمول sgmldiff:

sgmldiff english.sgml italiano.sgml

اگر تفاوت‌هایی در نشانه‌گذاری میان دو فایل وجود داشته باشد، sgmldiff مجموعه‌ای از گزارش‌های تفاوت را ارائه می‌دهد که در خطوطی به این صورت خلاصه شده‌اند:

169a164
در خط 169 از فایل نخست، خط 164 از فایل دوم افزوده شده است.
8a12,15
در خط 8 از فایل نخست، خط‌های 12 تا 15 از فایل دوم افزوده شده‌اند.
41d28
خط 41 از فایل نخست حذف شده است تا خط 28 از فایل دوم به دست آید.
63,66d61
خط‌های 63 تا 66 از فایل نخست حذف شده‌اند تا خط 61 از فایل دوم به دست آید.
52c51
خط 52 از فایل نخست به خط 51 از فایل دوم تغییر یافته است.
5,7c8,10
خط‌های 5 تا 7 از فایل نخست به خط‌های 8 تا 10 از فایل دوم تغییر یافته‌اند. علاوه بر این خلاصه‌ها، خط‌های فایل نخست با پیشوند '<' و خط‌های فایل دوم با پیشوند '>' نمایش داده می‌شوند.

در اینجا فهرستی از عملیاتی که می‌توان از sgmldiff درخواست کرد آمده است:

[ -a | --attributes ]
گنجاندن مقادیر صفت‌ها در آزمون‌های تفاوت. اگر احتمال دارد صفت‌ها ترجمه شوند، این گزینه را تنظیم نکنید. اگر مقدار صفت‌ها نباید میان دو فایل تغییر کند، این گزینه را مشخص کنید. حالت پیش‌فرض، عدم گنجاندن صفت‌ها در آزمون‌های تفاوت است.
[ -c [ attributes | nesting | textpos ] | --context [ attributes | nesting | textpos ] ]
افزودن زمینهٔ بیشتر به تفاوت‌ها. از آنجا که تمام متن میان برچسب‌ها پیش از بررسی تفاوت‌ها حذف می‌شود، احتمال دارد sgmldiff با این تصور نادرست که موقعیت‌ها در هر دو فایل متناظر یکدیگرند، خود را در مکانی اشتباه همگام‌سازی مجدد کند. با افزودن زمینهٔ بیشتر به ناحیهٔ مقایسه‌شده، این خطر کاهش می‌یابد.

مقادیر مجاز برای گزینهٔ --context عبارتند از:

در نظر گرفتن نام‌های صفت‌ها. مقادیر صفت‌ها با گزینهٔ attributes کنترل می‌شوند.
در نظر گرفتن سطح تودرتویی همهٔ برچسب‌های مقایسه‌شده.
در نظر گرفتن موقعیت در متن.
[ -s | --statistics ]
چاپ برخی اطلاعات SGML در پایان.
[ -h | --help ]
چاپ یک پیام راهنمای کوتاه و خروج
[ -v | --version ]
چاپ شناسهٔ نسخه و خروج

توسعه‌دهندهٔ sgmldiff.

تبدیل یک فایل SGML به سایر قالب‌های فایل
یک بخش پایه‌ای از موتور DSSSL با نام Jade
صفحهٔ خانگی ابزارهای DocBook، مجموعه‌ای از همهٔ ابزارهای لازم برای پردازش فایل‌های DocBook، از جمله DocBook-utils
05 December 2025