ALACRITTY(5) File Formats Manual ALACRITTY(5)

alacritty - قالب فایل پیکربندی TOML.

فایل پیکربندی Alacritty از قالب TOML استفاده می‌کند. مشخصات این قالب در https://toml.io/en/v1.0.0 قابل مشاهده است.

برنامه Alacritty فایل پیکربندی را برای شما ایجاد نمی‌کند، اما در سیستم‌های یونیکس در مسیرهای زیر به دنبال آن می‌گردد:

1.
$XDG_CONFIG_HOME/alacritty/alacritty.toml
2.
$XDG_CONFIG_HOME/alacritty.toml
3.
$HOME/.config/alacritty/alacritty.toml
4.
$HOME/.alacritty.toml
5.
/etc/alacritty/alacritty.toml

در ویندوز، فایل پیکربندی در مسیر زیر جستجو می‌شود:

1.
%APPDATA%\alacritty\alacritty.toml

این بخش به مستندسازی جدول [general] از فایل پیکربندی می‌پردازد.

import = ["<string>",]

وارد کردن (Import) فایل‌های پیکربندی اضافی.

موارد وارد شده به ترتیب بارگذاری می‌شوند و از تمام فایل‌های ناموجود صرف‌نظر می‌شود، و فایلی که عملیات درون‌ریزی را انجام می‌دهد در آخر بارگذاری می‌شود. اگر فیلدی از قبل در یک فایل وارد شده قبلی وجود داشته باشد، جایگزین خواهد شد.

تمامی موارد وارد شده باید یا مسیرهای مطلق باشند که با / شروع می‌شوند، یا مسیرهای نسبی نسبت به دایرکتوری خانگی کاربر باشند که با ~/ شروع می‌شوند، یا مسیرهای نسبی از فایل پیکربندی فعلی باشند.

مثال:

import = [
"~/.config/alacritty/base16-dark.toml",
"~/.config/alacritty/keybindings.toml",
"alacritty-theme/themes/gruvbox_dark.toml",
]

working_directory = "<string>" | "None"

دایرکتوری‌ای که شل در آن راه‌اندازی می‌شود. هنگامی که این مقدار تنظیم نشده باشد، یا برابر با "None" باشد، از دایرکتوری کاری فرایند والد استفاده خواهد شد.

پیش‌فرض: "None"

live_config_reload = true | false

بارگذاری مجدد و زنده پیکربندی (تغییرات نیازمند راه‌اندازی مجدد است)

پیش‌فرض: true

ipc_socket = true | false # (unix only)

ارائه سوکت IPC با استفاده از alacritty msg

پیش‌فرض: true

تمامی جفت‌های کلید-مقدار در بخش [env] به عنوان متغیرهای محیطی برای هر فرایندی که توسط Alacritty ایجاد می‌شود، از جمله شل آن، افزوده خواهند شد. برخی از مقادیر ممکن است متغیرهای تنظیم‌شده توسط خود alacritty را بازنویسی کنند.

مثال:

[env]
WINIT_X11_SCALE_FACTOR = "1.0"

این بخش به مستندسازی جدول [window] از فایل پیکربندی می‌پردازد.

dimensions = { columns = <integer>, lines = <integer> }

ابعاد پنجره (تغییرات نیازمند راه‌اندازی مجدد است).

تعداد سطرها/ستون‌ها (نه پیکسل‌ها) در ترمینال. برای اعمال شدن، هر دو مقدار سطرها و ستون‌ها باید غیرصفر باشند. تعداد ستون‌ها باید حداقل 2 باشد، در حالی که استفاده از مقدار 0 برای ستون‌ها و سطرها، اندازه پنجره را به مقدار پیشنهادی مدیر پنجره بازمی‌گرداند

پیش‌فرض: { columns = 0, lines = 0 }

position = "None" | { x = <integer>, y = <integer> } # (has no effect on Wayland)

موقعیت مکانی پنجره هنگام راه‌اندازی.

بر حسب تعداد پیکسل‌ها مشخص می‌شود.

اگر موقعیت مکانی "None" باشد، مدیریت جای‌گذاری بر عهده مدیر پنجره خواهد بود.

پیش‌فرض: "None"

padding = { x = <integer>, y = <integer> }

فاصله حاشیه خالی (Padding) اضافه شده در اطراف پنجره بر حسب پیکسل. این حاشیه بر اساس DPI مقیاس‌بندی می‌شود و مقدار مشخص‌شده همیشه به هر دو طرف مخالف اضافه می‌گردد.

پیش‌فرض: { x = 0, y = 0 }

dynamic_padding = true | false

توزیع یکنواخت حاشیه اضافی در اطراف محتوای ترمینال.

پیش‌فرض: false

decorations = "Full" | "None" | "Transparent" | "Buttonless"

تزیینات و چارچوب پنجره (Decorations).

Full

حاشیه‌ها و نوار عنوان.
None
بدون حاشیه و بدون نوار عنوان.
Transparent (macOS only)
نوار عنوان، پس‌زمینه شفاف و دکمه‌های نوار عنوان.
Buttonless (macOS only)
نوار عنوان، پس‌زمینه شفاف و بدون دکمه‌های نوار عنوان.

پیش‌فرض: "Full"

opacity = <float>

میزان کدر بودن (Opacity) پس‌زمینه به صورت یک عدد ممیز شناور از 0.0 تا 1.0. مقدار 0.0 کاملاً شفاف و 1.0 کاملاً کدر و مات است.

پیش‌فرض: 1.0

blur = true | false # (works on macOS/KDE Wayland)

درخواست از کامپوزیتور (Compositor) برای مات/تار کردن محتوای پشت پنجره‌های شفاف.

پیش‌فرض: false

startup_mode = "Windowed" | "Maximized" | "Fullscreen" | "SimpleFullscreen"

حالت راه‌اندازی (تغییرات نیازمند راه‌اندازی مجدد است)

Windowed

پنجره معمولی.
Maximized
پنجره هنگام راه‌اندازی بیشینه خواهد شد.
Fullscreen
پنجره هنگام راه‌اندازی تمام‌صفحه خواهد شد.
SimpleFullscreen (macOS only)
همانند Fullscreen، اما می‌توانید پنجره‌ها را روی آن قرار دهید.

پیش‌فرض: "Windowed"

title = "<string>"

عنوان پنجره.

پیش‌فرض: "Alacritty"

dynamic_title = true | false

اجازه دادن به برنامه‌های ترمینال برای تغییر عنوان پنجره Alacritty.

پیش‌فرض: true

class = { instance = "<string>", general = "<string>" } # (Linux/BSD only)

کلاس پنجره (Window Class).

در وی‌لند (Wayland)، مقدار general به عنوان app_id استفاده می‌شود و از instance صرف‌نظر می‌گردد.

پیش‌فرض: { instance = "Alacritty", general = "Alacritty" }

decorations_theme_variant = "Dark" | "Light" | "None"

بازنویسی گونه تم سیستم / تم GTK / تزیینات سمت کلاینت وی‌لند. این گزینه را روی "None" تنظیم کنید تا از گونه تم پیش‌فرض سیستم استفاده شود.

پیش‌فرض: "None"

resize_increments = true | false # (works on macOS/X11/Wayland)

ترجیح تغییر اندازه پنجره با گام‌های گسسته برابر با ابعاد سلول‌ها.

پیش‌فرض: false

option_as_alt = "OnlyLeft" | "OnlyRight" | "Both" | "None" # (macOS only)

رفتار کلید Option همانند کلید Alt.

پیش‌فرض: "None"

level = "Normal" | "AlwaysOnTop"

سطح قرارگیری پنجره (Window Level) را تنظیم می‌کند.

Normal

پنجره از ترتیب z پیش‌فرض سیستم پیروی می‌کند.
AlwaysOnTop
پنجره همیشه در بالاترین لایه قرار می‌گیرد.

پیش‌فرض: "Normal"

مثال:

[window]
padding = { x = 3, y = 3 }
dynamic_padding = true
opacity = 0.9

این بخش به مستندسازی جدول [scrolling] در فایل پیکربندی می‌پردازد.

history = <integer>

حداکثر تعداد خطوط در بافر پیمایش به عقب (scrollback).
تعیین 0 قابلیت پیمایش را غیرفعال می‌کند.
محدود به 100000.

پیش‌فرض: 10000

multiplier = <integer>

تعداد خطوط پیمایش‌شده به ازای هر گام پیمایش ورودی (اسکرول).

پیش‌فرض: 3

این بخش به مستندسازی جدول [font] در فایل پیکربندی می‌پردازد.

normal = { family = "<string>", style = "<string>" }

پیش‌فرض:
Linux/BSD: { family = "monospace", style = "Regular" }
Windows: { family = "Consolas", style = "Regular" }
macOS: { family = "Menlo", style = "Regular" }

bold = { family = "<string>", style = "<string>" }

اگر خانواده قلم (family) مشخص نشده باشد، به مقدار مشخص‌شده برای قلم عادی (normal) بازمی‌گردد.

پیش‌فرض: { style = "Bold" }

italic = { family = "<string>", style = "<string>" }

اگر خانواده قلم (family) مشخص نشده باشد، به مقدار مشخص‌شده برای قلم عادی (normal) بازمی‌گردد.

پیش‌فرض: { style = "Italic" }

bold_italic = { family = "<string>", style = "<string>" }

اگر خانواده قلم (family) مشخص نشده باشد، به مقدار مشخص‌شده برای قلم عادی (normal) بازمی‌گردد.

پیش‌فرض: { style = "Bold Italic" }

size = <float>

اندازه قلم بر حسب پوینت (point).

پیش‌فرض: 11.25

offset = { x = <integer>, y = <integer> }

آفست (فاصله اضافی) فضای خالی اضافه در اطراف هر کاراکتر است. y را می‌توان به‌عنوان تغییردهنده فاصله بین خطوط، و x را به‌عنوان تغییردهنده فاصله بین حروف در نظر گرفت.

پیش‌فرض: { x = 0, y = 0 }

glyph_offset = { x = <integer>, y = <integer> }

آفست گلیف (glyph offset) موقعیت گلیف‌ها را در سلول‌هایشان تعیین می‌کند که پیش‌فرض آن در پایین سلول است. افزایش x گلیف را به سمت راست و افزایش y گلیف را به سمت بالا جابه‌جا می‌کند.

builtin_box_drawing = true | false

هنگامی که true باشد، آلاکریتی از یک قلم داخلی سفارشی برای کاراکترهای رسم کادر (نقاط یونیکد U+2500 تا U+259F)، نمادهای محاسباتی قدیمی (U+1FB00 تا U+1FB3B) و نمادهای پاورلاین (U+E0B0 تا U+E0B3) استفاده خواهد کرد.

پیش‌فرض: true

این بخش به مستندسازی جدول [colors] در فایل پیکربندی می‌پردازد.

رنگ‌ها با استفاده از مقادیر هگزادسیمال همراه با پیشوند # مشخص می‌شوند: #RRGGBB.

primary

این بخش به مستندسازی جدول [colors.primary] در فایل پیکربندی می‌پردازد.

foreground = "<string>"

پیش‌فرض: "#d8d8d8"

background = "<string>"

پیش‌فرض: "#181818"

dim_foreground = "<string>"

اگر این مقدار تنظیم نشده باشد، رنگ به‌طور خودکار بر اساس رنگ پیش‌زمینه (foreground) محاسبه می‌شود.

پیش‌فرض: "#828482"

bright_foreground = "<string>"

این رنگ تنها زمانی استفاده می‌شود که draw_bold_text_with_bright_colors برابر true باشد.

اگر این مقدار تنظیم نشده باشد، رنگ پیش‌زمینه عادی استفاده خواهد شد.

پیش‌فرض: "None"

cursor = { text = "<string>", cursor = "<string>" }

رنگ‌هایی که باید برای رسم مکان‌نمای ترمینال استفاده شوند.

مقادیر مجاز عبارتند از رنگ‌های هگزادسیمال مانند #ff00ff، یا CellForeground/CellBackground، که به سلول تحت‌تأثیر اشاره دارد.

پیش‌فرض: { text = "CellBackground", cursor = "CellForeground" }

vi_mode_cursor = { text = "<string>", cursor = "<string>" }

رنگ‌های مکان‌نما هنگامی که حالت vi فعال است.

مقادیر مجاز عبارتند از رنگ‌های هگزادسیمال مانند #ff00ff، یا CellForeground/CellBackground، که به سلول تحت‌تأثیر اشاره دارد.

پیش‌فرض: { text = "CellBackground", cursor = "CellForeground" }

search

این بخش به مستندسازی جدول [colors.search] در پیکربندی می‌پردازد.

مقادیر مجاز عبارتند از رنگ‌های هگزادسیمال مانند #ff00ff، یا CellForeground/CellBackground، که به سلول تحت‌تأثیر اشاره دارد.

matches = { foreground = "<string>", background = "<string>" }

پیش‌فرض: { foreground = "#181818", background = "#ac4242" }

focused_match = { foreground = "<string>", background = "<string>" }

پیش‌فرض: { foreground = "#181818", background = "#f4bf75" }

hints

این بخش به مستندسازی جدول [colors.hints] در پیکربندی می‌پردازد.

start = { foreground = "<string>", background = "<string>" }

اولین کاراکتر در برچسب راهنما (hint label).

مقادیر مجاز عبارتند از رنگ‌های هگزادسیمال مانند #ff00ff، یا CellForeground/CellBackground، که به سلول تحت‌تأثیر اشاره دارد.

پیش‌فرض: { foreground = "#181818", background = "#f4bf75" }

end = { foreground = "<string>", background = "<string>" }

تمام کاراکترهای پس از اولین کاراکتر در برچسب راهنما (hint label).

مقادیر مجاز عبارتند از رنگ‌های هگزادسیمال مانند #ff00ff، یا CellForeground/CellBackground، که به سلول تحت‌تأثیر اشاره دارد.

پیش‌فرض: { foreground = "#181818", background = "#ac4242" }

line_indicator = { foreground = "<string>", background = "<string>" }

رنگ مورد استفاده برای نشانگری که موقعیت در تاریخچه را هنگام جستجو و حالت vi نمایش می‌دهد.

تنظیم این گزینه روی "None" از رنگ اصلی مخالف (opposing primary color) استفاده خواهد کرد.

پیش‌فرض: { foreground = "None", background = "None" }

footer_bar = { foreground = "<string>", background = "<string>" }

رنگ مورد استفاده برای نوار پاورقی (footer bar) در پایین، که توسط ورودی عبارت منظم جستجو، پیش‌نمایش URI پیوندها و غیره استفاده می‌شود.

پیش‌فرض: { foreground = "#181818", background = "#d8d8d8" }

selection = { text = "<string>", background = "<string>" }

رنگ‌های مورد استفاده برای رسم بخش‌های انتخاب‌شده (selections).

مقادیر مجاز عبارتند از رنگ‌های هگزادسیمال مانند #ff00ff، یا CellForeground/CellBackground، که به سلول تحت‌تأثیر اشاره دارد.

پیش‌فرض: { text = "CellBackground", background = "CellForeground" }

normal

این بخش به مستندسازی جدول [colors.normal] در پیکربندی می‌پردازد.

black = "<string>"

پیش‌فرض: "#181818"
red = "<string>"
پیش‌فرض: "#ac4242"
green = "<string>"
پیش‌فرض: "#90a959"
yellow = "<string>"
پیش‌فرض: "#f4bf75"
blue = "<string>"
پیش‌فرض: "#6a9fb5"
magenta = "<string>"
پیش‌فرض: "#aa759f"
cyan = "<string>"
پیش‌فرض: "#75b5aa"
white = "<string>"
پیش‌فرض: "#d8d8d8"

bright

این بخش به مستندسازی جدول [colors.bright] در پیکربندی می‌پردازد.

black = "<string>"

پیش‌فرض: "#6b6b6b"
red = "<string>"
پیش‌فرض: "#c55555"
green = "<string>"
پیش‌فرض: "#aac474"
yellow = "<string>"
پیش‌فرض: "#feca88"
blue = "<string>"
پیش‌فرض: "#82b8c8"
magenta = "<string>"
پیش‌فرض: "#c28cb8"
cyan = "<string>"
پیش‌فرض: "#93d3c3"
white = "<string>"
پیش‌فرض: "#f8f8f8"

dim

این بخش به مستندسازی جدول [colors.dim] در پیکربندی می‌پردازد.

اگر رنگ‌های کم‌رنگ (dim) تنظیم نشده باشند، به‌طور خودکار بر اساس رنگ‌های normal (عادی) محاسبه خواهند شد.

black = "<string>"

پیش‌فرض: "#0f0f0f"
red = "<string>"
پیش‌فرض: "#712b2b"
green = "<string>"
پیش‌فرض: "#5f6f3a"
yellow = "<string>"
پیش‌فرض: "#a17e4d"
blue = "<string>"
پیش‌فرض: "#456877"
magenta = "<string>"
پیش‌فرض: "#704d68"
cyan = "<string>"
پیش‌فرض: "#4d7770"
white = "<string>"
پیش‌فرض: "#8e8e8e"

indexed_colors = [{ index = <integer>, color = "<string>" },]

رنگ‌های نمایه‌گذاری‌شده (indexed colors) شامل تمام رنگ‌ها از ۱۶ تا ۲۵۶ هستند. هنگامی که این موارد تنظیم نشده باشند، با مقادیر پیش‌فرض معقول پر می‌شوند.

پیش‌فرض: []

transparent_background_colors = true | false

تعیین می‌کند که آیا window.opacity بر پس‌زمینه تمام سلول‌ها اعمال شود یا تنها بر پس‌زمینه پیش‌فرض. در صورت تنظیم روی true، تمام سلول‌ها بدون در نظر گرفتن رنگ پس‌زمینه‌شان، شفاف خواهند بود.

پیش‌فرض: false

draw_bold_text_with_bright_colors = true | false

هنگامی که true باشد، متن پررنگ (bold) با استفاده از گونه‌های رنگ‌های روشن (bright) رسم می‌شود.

پیش‌فرض: false

این بخش جدول [bell] از فایل پیکربندی را شرح می‌دهد.

animation = "Ease" | "EaseOut" | "EaseOutSine" | "EaseOutQuad" | "EaseOutCubic" | "EaseOutQuart" | "EaseOutQuint" | "EaseOutExpo" | "EaseOutCirc" | "Linear"

جلوه پویانمایی زنگ دیداری برای چشمک زدن صفحه هنگام به صدا درآمدن زنگ دیداری.

پیش‌فرض: "Linear"

duration = <integer>

مدت زمان چشمک زدن زنگ دیداری بر حسب میلی‌ثانیه. مقدار `duration` برابر با `0` پویانمایی زنگ دیداری را غیرفعال می‌کند.

پیش‌فرض: 0

color = "<string>"

رنگ پویانمایی زنگ دیداری.

پیش‌فرض: "#ffffff"

command = "<string>" | { program = "<string>", args = ["<string>",] }

این برنامه هر زمان که زنگ به صدا درآید اجرا می‌شود.

هنگامی که روی "None" تنظیم شود، هیچ دستوری اجرا نخواهد شد.

پیش‌فرض: "None"

این بخش جدول [selection] از فایل پیکربندی را شرح می‌دهد.

semantic_escape_chars = "<string>"

این رشته شامل تمام نویسه‌هایی است که به عنوان جداکننده برای «کلمات معنایی» در Alacritty استفاده می‌شوند.

پیش‌فرض: ",│`|:\"' ()[]{}<>\t"

save_to_clipboard = true | false

هنگامی که روی true تنظیم شود، متن انتخاب‌شده در کلیپ‌بورد اصلی کپی خواهد شد.

پیش‌فرض: false

این بخش جدول [cursor] از فایل پیکربندی را شرح می‌دهد.

style = { <shape>, <blinking> }

shape = "Block" | "Underline" | "Beam"
پیش‌فرض: "Block"

blinking = "Never" | "Off" | "On" | "Always"

Never
جلوگیری از هرگونه چشمک زدن مکان‌نما
Off
غیرفعال کردن چشمک زدن به صورت پیش‌فرض
On
فعال کردن چشمک زدن به صورت پیش‌فرض
Always
اجبار مکان‌نما به چشمک زدن همیشگی

پیش‌فرض: "Off"

vi_mode_style = { <shape>, <blinking> } | "None"

اگر سبک مکان‌نمای حالت vi برابر با "None" باشد یا مشخص نشده باشد، به مقدار فعال مکان‌نمای عادی بازمی‌گردد.

پیش‌فرض: "None"

blink_interval = <integer>

فاصله زمانی چشمک زدن مکان‌نما بر حسب میلی‌ثانیه.

پیش‌فرض: 750

blink_timeout = <integer>

مدت زمان بر حسب ثانیه که پس از آن چشمک زدن مکان‌نما متوقف می‌شود.

مشخص کردن 0 مهلت زمانی برای چشمک زدن را غیرفعال می‌کند.

پیش‌فرض: 5

unfocused_hollow = true | false

هنگامی که این مقدار true باشد، در صورتی که پنجره در حالت فوکوس نباشد، مکان‌نما به شکل یک کادر توخالی رندر می‌شود.

پیش‌فرض: true

thickness = <float>

ضخامت مکان‌نما نسبت به عرض سلول به صورت یک عدد ممیز شناور از 0.0 تا 1.0.

پیش‌فرض: 0.15

این بخش جدول [terminal] از فایل پیکربندی را شرح می‌دهد.

shell = "<string>" | { program = "<string>", args = ["<string>",] }

می‌توانید shell.program را روی مسیر پوسته مورد نظر خود تنظیم کنید، مثلاً /bin/zsh. ورودی‌های shell.args به عنوان آرگومان به پوسته ارسال می‌شوند.

پیش‌فرض:

Linux/BSD/macOS: برابر با $SHELL یا پوسته ورود به سیستم کاربر، اگر $SHELL تنظیم نشده باشد
Windows: "powershell"

مثال:

shell = { program = "/bin/zsh", args = ["-l"] }

osc52 = "Disabled" | "OnlyCopy" | "OnlyPaste" | "CopyPaste"

توانایی نوشتن در کلیپ‌بورد سیستم با توالی فرار OSC 52 را کنترل می‌کند. در حالی که این توالی فرار برای کپی کردن محتوا از سرور راه دور مفید است، اجازه دادن به هر برنامه‌ای برای خواندن از کلیپ‌بورد می‌تواند به راحتی مورد سوءاستفاده قرار گیرد، بدون این که مزیت چشمگیری نسبت به چسباندن صریح متن داشته باشد.

پیش‌فرض: "OnlyCopy"

این بخش جدول [mouse] از فایل پیکربندی را شرح می‌دهد.

hide_when_typing = true | false

هنگامی که این مقدار true باشد، مکان‌نما هنگام تایپ به صورت موقت پنهان می‌شود.

پیش‌فرض: false

bindings = [{ <mouse>, <mods>, <mode>, <command> | <chars> | <action> },]

برای مستندات کامل درباره mods، mode، command، chars و action به keyboard.bindings مراجعه کنید.

هنگامی که برنامه‌ای درون Alacritty موشواره را ضبط (تسخیر) می‌کند، کلید تبدیل `Shift` می‌تواند برای جلوگیری از گزارش موشواره استفاده شود. اگر هیچ کنشی برای رویداد یافت نشود، کنش‌های مربوط به رویداد بدون کلید تبدیل `Shift` به جای آن فعال می‌شوند.

mouse = "Middle" | "Left" | "Right" | "Back" | "Forward" | "WheelUp" | "WheelDown" | <integer>

دکمه موشواره که برای راه‌اندازی این کلید میانبر باید فشرده شود.

action = <keyboard.bindings.action> | "ExpandSelection"

ExpandSelection
گسترش انتخاب به موقعیت فعلی مکان‌نمای موشواره.

مثال:

[mouse]
bindings = [
{ mouse = "Right", mods = "Control", action = "Paste" },
]

این بخش جدول [hints] از فایل پیکربندی را شرح می‌دهد.

نشانه‌های ترمینال (Terminal hints) را می‌توان برای یافتن متن یا ابرپیوندها در بخش قابل مشاهده ترمینال و ارسال آن به برنامه‌های دیگر استفاده کرد.

alphabet = "<string>"

کلیدهای استفاده‌شده برای برچسب‌های نشانه.

پیش‌فرض: "jfkdls;ahgurieowpq"

enabled = [{ <regex>, <hyperlinks>, <post_processing>, <persist>, <action>, <command>, <binding>, <mouse> },]

آرایه‌ای شامل تمام نشانه‌های موجود.

هر نشانه باید دست‌کم یکی از regex یا hyperlinks و یکی از action یا command را داشته باشد.

regex = "<string>"
عبارت باقاعده‌ای که هر خط با آن مقایسه خواهد شد.

hyperlinks = true | false

هنگامی که این مقدار true باشد، تمام ابرپیوندهای توالی فرار OSC 8 در نشانه‌ها گنجانده می‌شوند.

post_processing = true | false

هنگامی که این مقدار true باشد، در صورتی که نویسه‌هایی وجود داشته باشند که احتمالاً بخشی از نشانه نیستند (مثلاً یک . در انتها)، از روش‌های اکتشافی برای کوتاه‌کردن تطابق استفاده می‌شود. این قابلیت بیشتر برای URIها مفید است و فقط برای تطابق‌های regex اعمال می‌شود.

persist = true | false

هنگامی که این مقدار true باشد، نشانه‌ها پس از انتخاب همچنان باقی می‌مانند.

action = "Copy" | "Paste" | "Select" | "MoveViModeCursor"

Copy
کپی کردن متن نشانه در کلیپ‌بورد.
Paste
چسباندن متن نشانه در ترمینال یا جستجو.
Select
انتخاب متن نشانه.
MoveViModeCursor
انتقال مکان‌نمای حالت vi به ابتدای نشانه.

command = "<string>" | { program = "<string>", args = ["<string>",] }

دستوری که هنگام کلیک روی نشانه یا انتخاب آن با binding اجرا خواهد شد.

متن نشانه همواره به عنوان آخرین آرگومان ضمیمه می‌شود.

binding = { key = "<string>", mods = "<string>", mode = "<string>" }

برای مستندات مقادیر موجود به keyboard.bindings مراجعه کنید.

این گزینه مشخص می‌کند که کدام کلید میانبر برای شروع فرآیند انتخاب نشانه با صفحه‌کلید استفاده شود.

mouse = { mods = "<string>", enabled = true | false }

برای مستندات مربوط به mods موجود به keyboard.bindings مراجعه کنید.

فیلد enabled کنترل می‌کند که آیا هنگام نگه داشتن نشانگر روی متن نشانه همراه با فشرده بودن تمام کلیدهای mods، زیر نشانه خط کشیده شود یا خیر.

پیش‌فرض:

[[hints.enabled]]
command = "xdg-open" # On Linux/BSD
# command = "open" # On macOS
# command = { program = "cmd", args = [ "/c", "start", "" ] } # On Windows
hyperlinks = true
post_processing = true
persist = false
mouse.enabled = true
binding = { key = "O", mods = "Control|Shift" }
regex =
"(ipfs:|ipns:|magnet:|mailto:|gemini://|gopher://|https://|http://|news:|file:|git://|ssh:|ftp://)[^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`\\\\]+"

این بخش به مستندسازی جدول [keyboard] در فایل پیکربندی می‌پردازد.

bindings = [{ <key>, <mods>, <mode>, <command> | <chars> | <action> },]

برای لغو یک کلید میانبر پیش‌فرض، می‌توانید از اکشن "ReceiveChar" برای حذف آن یا از "None" برای جلوگیری از هرگونه عملیاتی استفاده کنید.

می‌توان چندین کلید میانبر را با فشردن یک کلید تکی فعال کرد که به همان ترتیبی که تعریف شده‌اند اجرا خواهند شد.

key = "<string>"

کلیدهای معمولی مانند "A"، "0" و "Я" را می‌توان مستقیماً و بدون هیچ نحو خاصی نگاشت کرد. فهرست کامل کلیدهای نام‌گذاری‌شده مانند "F1" و نحو کلیدهای مرده (Dead keys) را می‌توانید در اینجا بیابید:

https://docs.rs/winit/latest/winit/keyboard/enum.NamedKey.html
https://docs.rs/winit/latest/winit/keyboard/enum.Key.html#variant.Dead

کلیدهای بخش ماشین‌حساب (Numpad) با پیشوند Numpad مشخص می‌شوند: "NumpadEnter" | "NumpadAdd" | "NumpadComma" | "NumpadDecimal" | "NumpadDivide" | "NumpadEquals" | "NumpadSubtract" | "NumpadMultiply" | "Numpad[0-9]".

فیلد key همچنین از کدهای اسکن (Scancode) که به صورت یک عدد ده‌دهی مشخص می‌شوند، پشتیبانی می‌کند.

mods = "Command" | "Control" | "Option" | "Super" | "Shift" | "Alt"

می‌توان چندین کلید تبدیل‌کننده (Modifier) را با استفاده از | ترکیب کرد، مانند: "Control | Shift".

mode = "AppCursor" | "AppKeypad" | "Search" | "Alt" | "Vi"

این مورد یک حالت ترمینال را تعریف می‌کند که برای اثرگذاری این کلید میانبر باید فعال باشد.

افزودن ~ به ابتدای یک حالت مستلزم این است که برای اعمال کلید میانبر، آن حالت غیرفعال باشد.

می‌توان چندین حالت را با استفاده از | ترکیب کرد، مانند: "~Vi|Search".

command = "<string>" | { program = "<string>", args = ["<string>",] }

یک فرآیند جدید ایجاد کرده و دستور مشخص‌شده را اجرا می‌کند.

chars = "<string>"

رشته مشخص‌شده را در ترمینال می‌نویسد.

action

ReceiveChar
اجازه دریافت ورودی نویسه.
None
بدون عملیات.
Paste
جای‌گذاری محتویات کلیپ‌بورد سیستم.
Copy
ذخیره انتخاب فعلی در کلیپ‌بورد.
IncreaseFontSize
افزایش اندازه قلم.
DecreaseFontSize
کاهش اندازه قلم.
ResetFontSize
بازنشانی اندازه قلم به مقدار پیکربندی.
ScrollPageUp
پیمایش دقیقاً یک صفحه به بالا.
ScrollPageDown
پیمایش دقیقاً یک صفحه به پایین.
ScrollHalfPageUp
پیمایش نیم صفحه به بالا.
ScrollHalfPageDown
پیمایش نیم صفحه به پایین.
ScrollLineUp
پیمایش یک خط به بالا.
ScrollLineDown
پیمایش یک خط به پایین.
ScrollToTop
پیمایش تا بالاترین نقطه.
ScrollToBottom
پیمایش تا پایین‌ترین نقطه.
ClearHistory
پاک‌سازی بافر(های) نمایش برای حذف تاریخچه.
Hide
پنهان کردن پنجره Alacritty.
Minimize
کمینه‌سازی پنجره Alacritty.
Quit
خروج از Alacritty.
ClearLogNotice
پاک‌کردن اعلان‌های هشدار و خطا.
SpawnNewInstance
راه‌اندازی نمونه جدیدی از Alacritty.
CreateNewWindow
ایجاد یک پنجره جدید Alacritty.
ToggleFullscreen
تغییر وضعیت حالت تمام‌صفحه.
ToggleMaximized
تغییر وضعیت حالت بیشینه‌شده.
ClearSelection
پاک‌کردن انتخاب فعال.
ToggleViMode
تغییر وضعیت حالت vi.
SearchForward
شروع جستجوی رو به جلو در بافر.
SearchBackward
شروع جستجوی رو به عقب در بافر.

اکشن‌های حالت Vi:

Up

حرکت به بالا.
Down
حرکت به پایین.
Left
حرکت به چپ.
Right
حرکت به راست.
First
ستون اول، یا ابتدای خط هنگامی که از قبل در ستون اول قرار دارد.
Last
ستون آخر، یا انتهای خط هنگامی که از قبل در ستون آخر قرار دارد.
FirstOccupied
اولین سلول غیرخالی در این سطر ترمینال، یا اولین سلول غیرخالی خط هنگامی که از قبل در اولین سلول سطر قرار دارد.
High
حرکت به بالای صفحه نمایش.
Middle
حرکت به وسط صفحه نمایش.
Low
حرکت به پایین صفحه نمایش.
SemanticLeft
حرکت به ابتدای کلمه جداشده بر اساس معناشناسی.
SemanticRight
حرکت به ابتدای کلمه جداشده معنایی بعدی.
SemanticLeftEnd
حرکت به انتهای کلمه جداشده معنایی قبلی.
SemanticRightEnd
حرکت به انتهای کلمه جداشده معنایی.
WordLeft
حرکت به ابتدای کلمه جداشده با فاصله خالی.
WordRight
حرکت به ابتدای کلمه جداشده با فاصله خالی بعدی.
WordLeftEnd
حرکت به انتهای کلمه جداشده با فاصله خالی قبلی.
WordRightEnd
حرکت به انتهای کلمه جداشده با فاصله خالی.
Bracket
حرکت به قلاب متناظر.
ParagraphUp
حرکت به بالای بند (پاراگراف) فعلی.
ParagraphDown
حرکت به زیر بند (پاراگراف) فعلی.
ToggleNormalSelection
تغییر وضعیت انتخاب عادی vi.
ToggleLineSelection
تغییر وضعیت انتخاب سطر در vi.
ToggleBlockSelection
تغییر وضعیت انتخاب بلوک در vi.
ToggleSemanticSelection
تغییر وضعیت انتخاب معنایی در vi.
SearchNext
پرش به ابتدای مورد منطبق بعدی.
SearchPrevious
پرش به ابتدای مورد منطبق قبلی.
SearchStart
پرش به شروع بعدی یک تطابق در سمت چپ مبدأ.
SearchEnd
پرش به پایان بعدی یک تطابق در سمت راست مبدأ.
Open
باز کردن نشانی اینترنتی (URL) زیر مکان‌نمای حالت vi.
CenterAroundViCursor
متمرکز کردن صفحه حول مکان‌نمای حالت vi.
InlineSearchForward
جستجوی رو به جلو در سطر فعلی.
InlineSearchBackward
جستجوی رو به عقب در سطر فعلی.
InlineSearchForwardShort
جستجوی رو به جلو در سطر فعلی، با توقف دقیقاً پیش از نویسه.
InlineSearchBackwardShort
جستجوی رو به عقب در سطر فعلی، با توقف دقیقاً پیش از نویسه.
InlineSearchNext
پرش به مورد منطبق بعدی در جستجوی درون‌خطی.
InlineSearchPrevious
پرش به مورد منطبق قبلی در جستجوی درون‌خطی.
SemanticSearchForward
جستجوی رو به جلو برای بخش انتخاب‌شده یا کلمه زیر مکان‌نما.
SemanticSearchBackward
جستجوی رو به عقب برای بخش انتخاب‌شده یا کلمه زیر مکان‌نما.

اکشن‌های جستجو:

SearchFocusNext

انتقال تمرکز به مورد منطبق بعدی جستجو.
SearchFocusPrevious
انتقال تمرکز به مورد منطبق قبلی جستجو.
SearchConfirm
تایید جستجوی فعال.
SearchCancel
لغو جستجوی فعال.
SearchClear
بازنشانی عبارت منظم (Regex) جستجو.
SearchDeleteWord
حذف آخرین کلمه در عبارت منظم جستجو.
SearchHistoryPrevious
رفتن به عبارت منظم قبلی در تاریخچه جستجو.
SearchHistoryNext
رفتن به عبارت منظم بعدی در تاریخچه جستجو.

مختص macOS:

ToggleSimpleFullscreen

ورود به حالت تمام‌صفحه بدون اشغال یک فضای کاری دیگر.
HideOtherApplications
پنهان کردن همه پنجره‌ها به غیر از Alacritty.
CreateNewTab
ایجاد پنجره جدید در یک برگه.
SelectNextTab
انتخاب برگه بعدی.
SelectPreviousTab
انتخاب برگه قبلی.
SelectTab1
انتخاب برگه اول.
SelectTab2
انتخاب برگه دوم.
SelectTab3
انتخاب برگه سوم.
SelectTab4
انتخاب برگه چهارم.
SelectTab5
انتخاب برگه پنجم.
SelectTab6
انتخاب برگه ششم.
SelectTab7
انتخاب برگه هفتم.
SelectTab8
انتخاب برگه هشتم.
SelectTab9
انتخاب برگه نهم.
SelectLastTab
انتخاب آخرین برگه.

مختص Linux/BSD:

CopySelection

رونوشت از بافر انتخاب.
PasteSelection
جای‌گذاری از بافر انتخاب.

پیش‌فرض: به alacritty-bindings(5) مراجعه کنید

مثال:

[keyboard]
bindings = [
{ key = "N", mods = "Control|Shift", action = "CreateNewWindow" },
{ key = "L", mods = "Control|Shift", chars = "l" },
]

این بخش به مستندسازی جدول [debug] در فایل پیکربندی می‌پردازد.

گزینه‌های اشکال‌زدایی برای کمک به عیب‌یابی مشکلات Alacritty در نظر گرفته شده‌اند. این گزینه‌ها ممکن است بدون هشدار قبلی تغییر کنند یا به طور کامل حذف شوند، بنابراین نباید به پایداری آن‌ها اتکا کرد.

render_timer = true | false

نمایش زمان لازم برای ترسیم هر فریم.

پیش‌فرض: false

persistent_logging = true | false

نگه‌داشتن فایل گزارش پس از خروج از Alacritty.

پیش‌فرض: false

log_level = "Off" | "Error" | "Warn" | "Info" | "Debug" | "Trace"

پیش‌فرض: "Warn"

برای افزودن کتابخانه‌های اضافی به ثبت وقایع، می‌توان از متغیر ALACRITTY_EXTRA_LOG_TARGETS استفاده کرد.

مثال:

ALACRITTY_EXTRA_LOG_TARGETS="winit;vte" alacritty -vvv

renderer = "glsl3" | "gles2" | "gles2pure" | "None"

اجبار به استفاده از یک رندرکننده خاص؛ مقدار "None" از بالاترین گزینه موجود استفاده خواهد کرد.

پیش‌فرض: "None"

print_events = true | false

ثبت تمامی رویدادهای دریافت‌شده پنجره در گزارش.

پیش‌فرض: false

highlight_damage = true | false

برجسته‌سازی اطلاعات آسیب پنجره (Window damage).

پیش‌فرض: false

prefer_egl = true | false

استفاده از EGL به عنوان API نمایش در صورتی که پلتفرم فعلی اجازه دهد. توجه داشته باشید که ممکن است شفافیت با EGL در Linux/BSD کار نکند.

پیش‌فرض: false

alacritty(1), alacritty-msg(1), alacritty-bindings(5), alacritty-escapes(7)

اشکالی پیدا کردید؟ لطفاً آن را در https://github.com/alacritty/alacritty/issues گزارش دهید.

  • Christian Duerr <contact@christianduerr.com>
  • Kirill Chibisov <contact@kchibisov.com>
2026-04-06