| DIFFUSE(1) | Diffuse Manual | DIFFUSE(1) |
نام (NAME)
diffuse - ابزار گرافیکی برای ادغام و مقایسه فایلهای متنی
خلاصه دستور (SYNOPSIS)
diffuse [-h | -? | --help | -v | --version]
diffuse [--no-rcfile | --rcfile file] [[option...] | [file...]...]
توضیحات (DESCRIPTION)
برنامه Diffuse یک ابزار گرافیکی برای ادغام و مقایسه فایلهای متنی است. برنامه Diffuse قادر است تعداد دلخواهی از فایلها را در کنار یکدیگر مقایسه کند و به کاربران امکان میدهد تطابق خطوط را به صورت دستی تنظیم کرده و فایلها را مستقیماً ویرایش نمایند. برنامه Diffuse همچنین میتواند نسخههای مختلف فایلها را از مخازن Bazaar، CVS، Darcs، Git، Mercurial، Monotone، RCS و Subversion برای مقایسه و ادغام دریافت کند.
گزینهها (OPTIONS)
گزینههای راهنما (Help Options)
اگر یک گزینه راهنما مشخص شود، باید تنها آرگومان مشخصشده در خط فرمان باشد. برنامه Diffuse بلافاصله پس از نمایش اطلاعات راهنما خارج خواهد شد.
-h, -?, --help
-v, --version
گزینههای پیکربندی (Configuration Options)
اگر یک گزینه پیکربندی مشخص شود، باید اولین آرگومان مشخصشده در خط فرمان باشد.
--no-rcfile
--rcfile file
گزینههای عمومی (General Options)
-c, --commit rev
-D, --close-if-same
-e, --encoding codec
-L, --label label
-m, --modified
-r, --revision rev
-s, --separate
-t, --tab
-V, --vcs vcs-list
--line line
--null-file
گزینههای نمایش (Display Options)
گزینههای نمایش مشخصشده در آرگومانهای خط فرمان، مقادیر تنظیمات ذخیرهشده را بازنویسی خواهند کرد.
-b, --ignore-space-change
-B, --ignore-blank-lines
-E, --ignore-end-of-line
-i, --ignore-case
-w, --ignore-all-space
مقایسه فایل (FILE COMPARISON)
از گزینههای منوی File → New 2-Way File Merge، File → New 3-Way File Merge، و File → New N-Way File Merge برای ایجاد برگههای بیشتر جهت مقایسه فایلهای متنی استفاده کنید. نام فایلها و نسخهها را میتوان در آرگومانهای خط فرمانِ مورداستفاده برای فراخوانی Diffuse یا در فیلدهای پنجره گفتگوی Open File مشخص کرد.
برنامه Diffuse فایلها را در کنار هم نمایش داده و فاصلههایی (gap) برای تراز کردن خطوط متنی مشابه درج میکند. تفاوتها با رنگ پسزمینه متفاوتی برجسته میشوند.
خلاصه مقایسه (Comparison Summary)
خلاصهای از فایلهای مقایسهشده در حاشیه سمت راست قرار دارد. این خلاصه نشان میدهد که کجا فاصلهها برای تراز کردن خطوط متنی منطبق درج شدهاند و تفاوتها را با استفاده از رنگ برجسته میکند. ویرایشهای دستی نیز با رنگ سبز مشخص میشوند. یک مکاننمای آبی ناحیهای را که در حال حاضر مشاهده میشود مشخص میکند. ناحیه دیدهشده را میتوان با کلیک در هر نقطه از این خلاصه تغییر داد.
انتخاب (Selecting)
خطوط متن را میتوان با استفاده از نشانگر ماوس یا صفحهکلید انتخاب کرد. خطوط متن را با کلیک روی یک خط با نشانگر ماوس انتخاب کنید. برای انتخاب چند خط، کلیک کرده و بکشید (drag کنید). نگه داشتن کلید Shift هنگام کلیک کردن، انتخاب فعلی را گسترش میدهد. خطوط را با استفاده از صفحهکلید و فشردن کلیدهای Page Up/Down یا کلیدهای جهتنما انتخاب کنید. با نگه داشتن کلید Shift و فشردن کلیدهای Page Up/Down یا کلیدهای جهتنما، انتخاب فعلی را گسترش دهید. با استفاده از کلیدهای جهتنمای چپ و راست، انتخاب را به فایل مجاور منتقل کنید.
تطبیق خطوط (Matching Lines)
میتوان از نشانگر ماوس یا صفحهکلید برای تراز دستی خطوط متن با فایلهای مجاور استفاده کرد. برای تراز کردن خطوط متن با نشانگر ماوس، یک خط متن را با کلیک چپ ماوس انتخاب کنید، روی خطی از متن از یک فایل مجاور راستکلیک کرده و گزینه Align with Selection را انتخاب نمایید. برای تراز کردن خطوط متن با صفحهکلید، انتخاب را با کلیدهای جهتنما حرکت دهید، کلید فاصله (Space) را فشار دهید تا خط متن فعلی علامتگذاری شود، انتخاب را با کلیدهای جهتنما به یک خط متن در فایل مجاور منتقل کرده و دوباره کلید فاصله را فشار دهید تا خط مقصد انتخاب شود. فشردن کلید Escape عملیات را لغو خواهد کرد.
از گزینه منوی Isolate برای جلوگیری از تطبیق خطوط انتخابشده با هر خطی از فایلهای مجاور استفاده کنید.
ویرایش (Editing)
کلید Enter را فشار دهید یا روی ناحیه متن دوبار کلیک کنید تا وارد حالت ویرایش متن شوید. مکاننما تغییر خواهد کرد تا حالت ویرایش متن را نشان دهد و نوار وضعیت در پایین پنجره موقعیت ستون مکاننما را نمایش خواهد داد.
در حالت ویرایش متن، متن را میتوان با نشانگر ماوس با کلیک کردن و کشیدن انتخاب کرد. انتخاب فعلی را میتوان با نگه داشتن کلید Shift و جابجایی مکاننما با کلیک ماوس یا فشردن هریک از کلیدهای جهتنما، Home، End یا Page Up/Down گسترش داد. کلمات منفرد را میتوان با دوبار کلیک روی آنها با نشانگر ماوس انتخاب کرد. کل خطوط را میتوان با سه بار کلیک روی آنها با نشانگر ماوس انتخاب کرد.
متن را با تایپ روی صفحهکلید تغییر دهید. خطوط تغییریافته با رنگ سبز برجسته میشوند. از گزینههای منوی Undo و Redo برای واگردانی و بازانجام عملیاتهای قبلی استفاده کنید.
کلید Escape را فشار دهید یا با کلیک چپ ماوس روی ناحیه متن فایلی دیگر کلیک کنید تا از حالت ویرایش خارج شوید.
ادغام (Merging)
از دکمههای تفاوت یا گزینههای منو برای پیمایش بین بلوکهای تفاوت در یک فایل استفاده کنید. هنگام پیمایش، Diffuse انتخاب را به مجموعه پیوسته بعدی از خطوط دارای تفاوت یا ویرایش منتقل میکند.
از دکمههای ادغام یا گزینههای منو برای کپی کردن بلوکهای متن در محدوده خطوط انتخابشده استفاده کنید. از گزینههای منوی Undo و Redo میتوان برای واگردانی و بازانجام عملیاتهای قبلی استفاده کرد. تمام تغییرات اعمالشده بر روی یک مجموعه از خطوط را میتوان با استفاده از گزینه منوی Clear Edits صرف نظر از ترتیب انجام ویرایشها، بازگرداند.
کنترل نسخه (VERSION CONTROL)
برنامه Diffuse میتواند نسخههای فایل را از چندین سامانه کنترل نسخه از طریق رابط خط فرمان آنها دریافت کند. نگارش مایکروسافت ویندوزِ Diffuse قادر است از هر دو نسخه بومی و Cygwin سامانههای پشتیبانیشده کنترل نسخه استفاده کند. هنگام استفاده از Diffuse با Cygwin، اطمینان حاصل کنید که تنظیمات Cygwin در Diffuse سیستم شما را به درستی توصیف میکنند. اگر گزینه ترجیحی Update paths for Cygwin برای یک سامانه کنترل نسخه وجود داشته باشد، برای استفاده از نگارش Cygwin باید فعال گردد.
سامانههای کنترل نسخه نسبت به مسیر سیستم (PATH) و سایر تنظیمات متغیرهای محیطی حساس هستند. گزینه ترجیحی Launch from a Bash login shell میتواند برای تنظیم آسان محیط سامانههای کنترل نسخه Cygwin استفاده شود.
مشاهده تغییرات ثبتنشده (Viewing Uncommitted Modifications)
گزینه -m باعث میشود Diffuse برگههای مقایسهای را برای هر فایلی که طبق اعلام سامانه کنترل نسخه دارای تغییرات ثبتنشده (کامیتنشده) است، باز کند. این ویژگی برای بازبینی تمام تغییرات پیش از ثبت یا حل تداخلهای ادغام بسیار مناسب است. اگر هیچ مسیری مشخص نشود، دایرکتوری کاری فعلی استفاده خواهد شد. به عنوان مثال، تمام تغییرات ثبتنشده خود را با این دستور خط فرمان مشاهده کنید:
$ diffuse -m
اگر تنها یک فایل مشخص شود، نسخه پیشفرض فایل برای مقایسه استفاده خواهد شد. برای مثال، دستور زیر یک ادغام ۲-طرفه بین نسخه پیشفرض foo.C و فایل محلی foo.C را نمایش میدهد:
$ diffuse foo.C
مشخص کردن نسخهها (Specifying Revisions)
گزینه -r همچنین میتواند برای مشخص کردن صریح یک نسخه خاص از فایل استفاده شود. هر مشخصکننده نسخهای که برای سامانه کنترل نسخه قابل فهم باشد میتواند به کار رود. اگر تنها یک نسخه از فایل مشخص شده باشد، فایل محلی برای مقایسه استفاده خواهد شد. برای مثال، دستور زیر یک ادغام ۲-طرفه بین نسخه 123 از foo.C و فایل محلی foo.C را نمایش میدهد:
$ diffuse -r 123 foo.C
با مشخص کردن چندین گزینه -r میتوان نسخههای متعددی از فایل را با هم مقایسه کرد. برای مثال، دستور زیر یک ادغام ۲-طرفه بین نسخه 123 از foo.C و نسخه 321 از foo.C را نمایش میدهد:
$ diffuse -r 123 -r 321 foo.C
فایلهای محلی را میتوان با فایلهای سامانه کنترل نسخه ترکیب کرد. برای مثال، دستور زیر یک ادغام ۳-طرفه بین نسخه MERGE_HEAD از foo.C، فایل محلی foo.C، و نسخه HEAD از foo.C را نمایش میدهد:
$ diffuse -r MERGE_HEAD foo.C foo.C -r HEAD foo.C
گزینه -c میتواند برای مشخص کردن آسان یک جفت نسخه متوالی استفاده شود. برای مثال، دستور زیر یک ادغام ۲-طرفه بین نسخه 1.2.2 از foo.C و نسخه 1.2.3 از foo.C را نمایش میدهد:
$ diffuse -c 1.2.3 foo.C
برنامه Diffuse تعداد قابهای مورد استفاده برای مقایسه فایلها را محدود نمیکند. ورودیهای یک ادغام چندگانه (octopus merge) در گیت را میتوان با خط فرمانی مانند این مشاهده کرد:
$ diffuse -r HEAD^1 -r HEAD^2 -r HEAD^3 -r HEAD^4 -r HEAD^5 foo.C
منابع (RESOURCES)
منابع میتوانند برای سفارشیسازی جنبههای مختلف ظاهر و رفتار Diffuse مانند تغییر رنگهای مورد استفاده در رابط کاربری، سفارشیسازی کلیدهای میانبر صفحهکلید، افزودن یا جایگزینی قواعد برجستهسازی نحوی، یا تغییر نگاشت پسوندهای فایل به قواعد برجستهسازی نحوی به کار روند.
هنگامی که Diffuse شروع به کار میکند، ابتدا دستورات را از فایل راهاندازی اولیه سراسری سیستم /etc/diffuserc (%INSTALL_DIR%\diffuserc در مایکروسافت ویندوز) و سپس از فایل راهاندازی اولیه شخصی ~/.config/diffuse/diffuserc (%HOME%\.config\diffuse\diffuserc در مایکروسافت ویندوز) میخواند. این رفتار را میتوان با گزینههای پیکربندی --no-rcfile و --rcfile تغییر داد. یک تحلیلگر لغوی مشابه Bourne shell برای تجزیه دستورات راهاندازی اولیه استفاده میشود. توضیحات (کامنتها) و نویسههای خاص را میتوان با همان شیوه اسکیپ موجود در اسکریپتهای Bourne shell درج کرد.
عمومی (General)
import file
ترکیب کلیدها (Key Bindings)
keybinding context action key_combination
کلیدهای
میانبر
گزینههای
منو (Menu Item Key Bindings)
از menu برای context جهت تعریف کلیدهای میانبر گزینههای منو استفاده کنید. مقادیر زیر برای action معتبر هستند:
open_file
Default: Ctrl+o
open_file_in_new_tab
Default: Ctrl+t
open_modified_files
Default: Shift+Ctrl+O
open_commit
Default: Shift+Ctrl+T
reload_file
Default: Shift+Ctrl+R
save_file
Default: Ctrl+s
save_file_as
Default: Shift+Ctrl+A
save_all
Default: Shift+Ctrl+S
new_2_way_file_merge
Default: Ctrl+2
new_3_way_file_merge
Default: Ctrl+3
new_n_way_file_merge
Default: Ctrl+4
close_tab
Default: Ctrl+w
undo_close_tab
Default: Shift+Ctrl+w
quit
Default: Ctrl+q
undo
Default: Ctrl+z
redo
Default: Shift+Ctrl+Z
cut
Default: Ctrl+x
copy
Default: Ctrl+c
paste
Default: Ctrl+v
select_all
Default: Ctrl+a
clear_edits
Default: Ctrl+r
dismiss_all_edits
Default: Ctrl+d
find
Default: Ctrl+f
find_next
Default: Ctrl+g
find_previous
Default: Shift+Ctrl+G
go_to_line
Default: Shift+Ctrl+L
preferences
Default: None
no_syntax_highlighting
Default: None
syntax_highlighting_syntax
Default: None
realign_all
Default: Ctrl+l
isolate
Default: Ctrl+i
first_difference
Default: Shift+Ctrl+Up
previous_difference
Default: Ctrl+Up
next_difference
Default: Ctrl+Down
last_difference
Default: Shift+Ctrl+Down
first_tab
Default: Shift+Ctrl+Page_Up
previous_tab
Default: Ctrl+Page_Up
next_tab
Default: Ctrl+Page_Down
last_tab
Default: Shift+Ctrl+Page_Down
shift_pane_right
Default: Shift+Ctrl+parenleft
shift_pane_left
Default: Shift+Ctrl+parenright
convert_to_upper_case
Default: Ctrl+u
convert_to_lower_case
Default: Shift+Ctrl+U
sort_lines_in_ascending_order
Default: Ctrl+y
sort_lines_in_descending_order
Default: Shift+Ctrl+Y
remove_trailing_white_space
Default: Ctrl+k
convert_tabs_to_spaces
Default: Ctrl+b
convert_leading_spaces_to_tabs
Default: Shift+Ctrl+B
increase_indenting
Default: Shift+Ctrl+greater
decrease_indenting
Default: Shift+Ctrl+less
convert_to_dos
Default: Shift+Ctrl+E
convert_to_mac
Default: Shift+Ctrl+C
convert_to_unix
Default: Ctrl+e
copy_selection_right
Default: Shift+Ctrl+Right
copy_selection_left
Default: Shift+Ctrl+Left
copy_left_into_selection
Default: Ctrl+Right
copy_right_into_selection
Default: Ctrl+Left
merge_from_left_then_right
Default: Ctrl+m
merge_from_right_then_left
Default: Shift+Ctrl+M
help_contents
Default: F1
about
Default: None
کلیدهای
میانبر
حالت
ویرایش خط (Line
Editing Mode Key Bindings)
از line_mode برای context جهت تعریف کلیدهای میانبر حالت ویرایش خط استفاده کنید. مقادیر زیر برای action معتبر هستند:
enter_align_mode
Default: space
enter_character_mode
Defaults: Return, KP_Enter
first_line
Defaults: Home, g
extend_first_line
Default: Shift+Home
last_line
Defaults: End, Shift+G
extend_last_line
Default: Shift+End
up
Defaults: Up, k
extend_up
Defaults: Shift+Up, Shift+K
down
Defaults: Down, j
extend_down
Defaults: Shift+Down, Shift+J
left
Defaults: Left, h
extend_left
Default: Shift+Left
right
Defaults: Right, l
extend_right
Default: Shift+Right
page_up
Defaults: Page_Up, Ctrl+u
extend_page_up
Defaults: Shift+Page_Up, Shift+Ctrl+u
page_down
Defaults: Page_Down, Ctrl+d
extend_page_down
Defaults: Shift+Page_Down, Shift+Ctrl+d
delete_text
Defaults: BackSpace, Delete, x
first_difference
Defaults: Ctrl+Home, Shift+P
previous_difference
Default: p
next_difference
Default: n
last_difference
Defaults: Ctrl+End, Shift+N
clear_edits
Default: r
copy_selection_left
Default: None
copy_selection_right
Default: None
copy_left_into_selection
Default: Shift+L
copy_right_into_selection
Default: Shift+H
merge_from_left_then_right
Default: m
merge_from_right_then_left
Default: Shift+M
isolate
Default: i
کلیدهای
میانبر
حالت
ویرایش
تراز (Alignment Editing Mode Key Bindings)
از align_mode برای context جهت تعریف کلیدهای میانبر حالت ویرایش تراز استفاده کنید. مقادیر زیر برای action معتبر هستند:
enter_line_mode
Default: Escape
enter_character_mode
Defaults: Return, KP_Enter
first_line
Default: g
last_line
Default: Shift+G
up
Defaults: Up, k
down
Defaults: Down, j
left
Defaults: Left, h
right
Defaults: Right, l
page_up
Defaults: Page_Up, Ctrl+u
page_down
Defaults: Page_Down, Ctrl+d
align
Default: space
کلیدهای
میانبر
حالت
ویرایش
نویسه (Character Editing Mode Key
Bindings)
از character_mode برای context جهت تعریف کلیدهای میانبر حالت ویرایش نویسه استفاده کنید. مقادیر زیر برای action معتبر هستند:
enter_line_mode
Default: Escape
رشتهها (Strings)
string name value
منابع
رشتهای
استفادهشده
(Used String Resources)
منابع رشتهای زیر توسط Diffuse استفاده میشوند:
difference_colours
Default: difference_1 difference_2 difference_3
رنگها (Colours)
[ colour | color ] name red green blue
منابع
رنگی
استفادهشده
(Used Colour Resources)
منابع رنگی زیر توسط Diffuse استفاده میشوند:
alignment
Default: 1 1 0
character_selection
Default: 0.7 0.7 1
cursor
Default: 0 0 0
difference_1
Default: 1 0.625 0.625
difference_2
Default: 0.85 0.625 0.775
difference_3
Default: 0.85 0.775 0.625
edited
Default: 0.5 1 0.5
hatch
Default: 0.8 0.8 0.8
line_number
Default: 0 0 0
line_number_background
Default: 0.75 0.75 0.75
line_selection
Default: 0.7 0.7 1
map_background
Default: 0.6 0.6 0.6
margin
Default: 0.8 0.8 0.8
preedit
Default: 0 0 0
text
Default: 0 0 0
text_background
Default: 1 1 1
مقادیر ممیز شناور (Floating Point Values)
float name value
منابع
ممیز شناور
استفادهشده
(Used Floating Point Resources)
منابع ممیز شناور زیر توسط Diffuse استفاده میشوند:
alignment_opacity
Defaults: 1
character_difference_opacity
Defaults: 0.4
character_selection_opacity
Defaults: 0.4
edited_opacity
Defaults: 0.4
line_difference_opacity
Defaults: 0.3
line_selection_opacity
Defaults: 0.4
برجستهسازی نحوی (Syntax Highlighting)
syntax name [initial_state default_tag]
syntax_files name [pattern]
syntax_magic name [pattern [ignorecase]]
syntax_pattern name initial_state final_state tag pattern [ignorecase]
فایلها (FILES)
فایلهای زیر توسط Diffuse استفاده میشوند:
/etc/diffuserc
/usr/share/diffuse/syntax/*.syntax
~/.config/diffuse/diffuserc
~/.config/diffuse/prefs
~/.local/share/diffuse/state
نویسنده (AUTHOR)
برنامه Diffuse توسط Derrick Moser <derrick_moser@yahoo.com> نوشته شده است.
© 2006-2014 Derrick Moser. کلیه حقوق محفوظ است.
کپیرایت و تکثیر (COPYING)
برنامه Diffuse نرمافزار آزاد است؛ شما میتوانید آن را تحت شرایط GNU General Public License منتشرشده توسط بنیاد نرمافزار آزاد (Free Software Foundation) بازتوزیع کرده و/یا تغییر دهید؛ چه نسخه 2 مجوز و چه (به انتخاب خودتان) هر نسخه بعدی آن.
| 2014-07-18 | diffuse 0.4.8 |