| VIMB(1) | Vimb Manual | VIMB(1) |
نام (NAME)
vimb - مرورگر وب سریع و سبک با الهام از کلیدهای ویم بر پایه WebKit
خلاصه دستور (SYNOPSIS)
vimb [OPTIONS] [URI|file|-]
توضیحات (DESCRIPTION)
vimb یک مرورگر وب مبتنی بر WebKit است که رفتاری شبیه به افزونهٔ Vimperator برای فایرفاکس دارد و از الگوهای کاربری ویرایشگر بزرگ Vim بهره میبرد. هدف Vimb ایجاد یک تجربهٔ وبگردی کاملاً مبتنی بر صفحهکلید، کارآمد و لذتبخش است.
گزینهها (OPTIONS)
اگر هیچ URI یا file مشخص نشود، Vimb صفحهٔ خانگی پیکربندیشده را باز خواهد کرد. اگر URI برابر '-' باشد، Vimb کد HTML را برای نمایش از ورودی استاندارد (stdin) میخواند.
آرگومانهای الزامی برای گزینههای طولانی، برای گزینههای کوتاه نیز الزامی هستند.
- -C, --cmd CMD
- اجرای CMD به
عنوان خط
دستور ex
دقیقاً پیش
از
بارگذاری
نخستین
صفحه. اگر
از این فلگ
بیش از یک
بار
استفاده
شود،
دستورات به
همان
ترتیبی که
داده
شدهاند
فراخوانی
میشوند.
همچنین
میتوانید
چند دستور ex
را در یک CMD
ارسال
کنید، در
صورتی که با
"|" از
یکدیگر جدا
شده باشند.
vimb --cmd "set dark-mode=on|set header=Referer,DNT=1"
- -c, --config FILE
- استفاده از پیکربندی سفارشی ارائهشده در FILE. این پیکربندی روی نمونههای جدید اجراشده نیز اعمال خواهد شد.
- -e, --embed WINID
- [منسوخ شده -
پشتیبانی
از XEmbed در GTK4 حذف
شده است]
این گزینه دیگر کارایی ندارد. در GTK4 پشتیبانی از GtkPlug/GtkSocket XEmbed حذف شده است. برای گزینههای جایگزین یکپارچهسازی تبها، مستندات پروژه را مشاهده کنید. - -i, --incognito
- راهاندازی یک نمونه با دادههای کاربری فقطخواندنی (بخش FILES را ببینید).
- -h, --help
- نمایش گزینههای راهنما.
- -p, --profile PROFILE-NAME
- ایجاد یا باز کردن نمایهٔ (پروفایل) پیکربندی مشخصشده. دادههای پیکربندی این نمایه در پوشهای به نام PROFILE-NAME در زیر دایرکتوری پیشفرض دادههای پیکربندی ذخیره میشود.
- -v, --version
- چاپ اطلاعات ساخت و نسخه و سپس خروج.
- --no-maximize
- تلاشی برای بیشینهسازی پنجره انجام نمیدهد.
- --bug-info
- چاپ اطلاعات دربارهٔ کتابخانههای استفادهشده برای گزارشهای باگ و سپس خروج.
حالتها (MODES)
برنامه Vimb چندحالته است و حالتهای اصلی زیر را دارد:
- حالت عادی (Normal Mode)
- حالت پیشفرض. فشردن Escape همیشه وارد حالت عادی میشود.
- حالت ورودی (Input Mode)
- برای ویرایش عناصر متنی در یک صفحهٔ وب استفاده میشود.
- حالت دستور (Command Mode)
- اجرای دستورات `ex` از کادر ورودی داخلی (خط فرمان).
- حالت عبور مستقیم (Pass-Through Mode)
- در حالت عبور مستقیم، تنها کلیدهای میانبر `<Esc>` و `<C-[>` توسط Vimb تفسیر میشوند و تمام کلیدهای دیگر برای رسیدگی به webview ارسال میگردند. این قابلیت امکان استفاده از میانبرهای کلیدی پیکربندیشده در خود وبسایت را فراهم میکند که در غیر این صورت ممکن بود توسط Vimb دریافت و نادیده گرفته شوند.
دستورات حالت عادی (NORMAL MODE COMMANDS)
برخی از دستورات حالت عادی میتوانند یک شمارندهٔ عددی برای چند برابر کردن اثر دستور داشته باشند. اگر دستوری از شمارنده پشتیبانی کند، این موضوع بهصورت [N] نشان داده میشود.
عمومی (General)
- :
- شروع حالت دستور و درج `:' در کادر ورودی.
- gi
- قرار دادن مکاننما روی نخستین عنصر قابل ویرایش در صفحه و رفتن به حالت ورودی.
- i
- قرار دادن مکاننما روی آخرین عنصر فوکوسشده در صفحه و رفتن به حالت ورودی. اگر پیش از این عنصری فوکوس نشده باشد، همانند `gi' نخستین عنصر فوکوس میشود.
- CTRL-Z
- بردن Vimb به حالت عبور مستقیم (Pass-Through Mode).
- gf
- باز کردن ویرایشگر پیکربندیشده (`editor-command') با محتوای صفحهٔ جاری.
- gF
- باز کردن بازرس وب (Web Inspector) برای صفحهٔ جاری.
- CTRL-V
- ارسال مستقیم فشردن کلید بعدی به GTK.
- CTRL-Q
- خروج از مرورگر در صورتی که دانلود در حال اجرایی وجود نداشته باشد.
تبها (Tabs)
برنامه Vimb از مرور بر پایهٔ تب در یک پنجرهٔ واحد پشتیبانی میکند.
ناوبری (Navigation)
- o
- شروع حالت دستور و درج `:open ' در کادر ورودی.
- O
- شروع حالت دستور و درج `:open URI' در کادر ورودی.
- t
- شروع حالت دستور و درج `:tabopen ' در کادر ورودی.
- T
- شروع حالت دستور و درج `:tabopen URI' در کادر ورودی.
- gh
- باز کردن صفحهٔ خانگی پیکربندیشده.
- gH
- باز کردن صفحهٔ خانگی پیکربندیشده در یک تب جدید.
- u
- باز کردن آخرین صفحهٔ بستهشده.
- U
- باز کردن آخرین صفحهٔ بستهشده در یک تب جدید.
- CTRL-P
- باز کردن قدیمیترین مورد از صف «بعداً بخوانید» در پنجرهٔ جاری مرورگر.
- ["x]p
- باز کردن URI از ثبات x یا در صورت مشخص نبودن، از کلیپبورد.
- ["x]P
- باز کردن URI از ثبات x یا در صورت مشخص نبودن، از کلیپبورد در یک تب جدید.
- [N]CTRL-O
- بازگشت به میزان N گام در تاریخچهٔ مرورگر.
- [N]CTRL-I
- رفتن به جلو به میزان N گام در تاریخچهٔ مرورگر.
- [N]gu
- رفتن به Nمین دایرکتوری فرزند از URI بازشدهٔ جاری.
- gU
- رفتن به دامنهٔ صفحهٔ بازشدهٔ جاری.
- r
- بارگذاری مجدد وبسایت.
- R
- بارگذاری مجدد وبسایت بدون استفاده از حافظهٔ موقت (کَش).
- CTRL-C
- توقف بارگذاری صفحهٔ جاری.
- CTRL-LeftMouse, MiddleMouse
- باز کردن پیوند کلیکشده در یک تب جدید.
- Shift-LeftMouse
- افزودن نشانی پیوند زیر مکاننما به انتهای صف «بعداً بخوانید»، مشابه دستور `:qpush'.
حرکت (Motion)
- [N]CTRL-F
- پیمایش به میزان N صفحه به پایین.
- [N]CTRL-B
- پیمایش به میزان N صفحه به بالا.
- [N]CTRL-D
- پیمایش به میزان N نیمصفحه به پایین.
- [N]CTRL-U
- پیمایش به میزان N نیمصفحه به بالا.
- [N]gg
- پیمایش به بالای صفحهٔ جاری. یا در صورت مشخص بودن N، به N% از صفحه.
- [N]G
- پیمایش به پایین صفحهٔ جاری. یا در صورت مشخص بودن N، به N% از صفحه.
- 0, ^
- پیمایش به انتهاییترین نقطهٔ سمت چپ سند. برخلاف Vim، کلیدهای 0 و ^ دقیقاً به یک شکل عمل میکنند.
- $
- پیمایش به انتهاییترین نقطهٔ سمت راست سند.
- [N]h
- پیمایش به میزان N گام به سمت چپ صفحه.
- [N]l
- پیمایش به میزان N گام به سمت راست صفحه.
- [N]j
- پیمایش صفحه به میزان N گام به پایین.
- [N]k
- پیمایش صفحه به میزان N گام به بالا.
- m{a-z}
- تنظیم یک نشانهٔ صفحه {a-z} در موقعیت فعلی در صفحه. نشانههای تنظیمشده به این شکل تنها در صفحهٔ جاری در دسترس هستند؛ در صورت خروج از صفحه، تمام نشانهها حذف خواهند شد.
- m{A-Z}
- تنظیم یک نشانهٔ صفحه {A-Z} در موقعیت فعلی در صفحه. این نشانهها در تمام صفحات بهطور دائمی باقی میمانند.
- '{a-z}
- پرش به نشانهٔ {a-z} در صفحهٔ جاری.
- '{A-Z}
- پرش به نشانهٔ سراسری {A-Z} در صفحهای که میتواند متفاوت باشد.
- ''
- پرش به موقعیت پیش از آخرین پرش، یا جایی که آخرین دستور "m'" داده شده بود.
اشاره / هینت (Hinting)
قابلیت Hinting در Vimb روشی است که از طریق آن کارهایی را انجام میدهید که در مرورگرهای متداول مبتنی بر موشواره با ماوس انجام میشد: باز کردن یک URI، کپی کردن یک URI، ذخیرهٔ صفحه و غیره. هنگامی که فرایند اشاره آغاز میشود، عناصر مرتبط در صفحه با برچسبهایی که از کلیدهای پیکربندیشدهٔ `hint-keys' تولید شدهاند نشانهگذاری میشوند. اشارهها را میتوان با استفاده از <Tab>، <C-I> یا <C-Tab>، <C-O>، با تایپ حروف برچسب، یا فیلتر کردن عناصر از طریق متنی که بخشی از عنصر اشارهشده است (مانند URI، متن پیوند، برچسب دکمه) یا هر ترکیبی از این روشها انتخاب کرد. در صورت فشردن <enter>، اشارهٔ فعال فعلی اجرا خواهد شد. اگر تنها یک اشارهٔ ممکن باقی بماند، بهطور خودکار اجرا میشود.
نحو: ;{mode}{hint}
شروع حالت اشاره (Hints mode). بسته به mode عناصر متفاوتی برجسته و «شمارهگذاری» میشوند. عناصر را میتوان با تایپ برچسب آنها یا با تایپ بخشی از متن آنها (hint) برای محدود کردن نتایج انتخاب کرد. هنگامی که عنصری انتخاب شد، بهطور خودکار روی آن کلیک شده یا استفاده میشود (بسته به mode) و حالت اشاره پایان مییابد.
فیلتر کردن اشارهها با متن، عبارت جستجو را در محل فاصله (' ') تفکیک کرده و از بخشهای مجزا به عنوان عبارتهای جداگانه برای فیلتر کردن اشارهها استفاده میکند. این قابلیت برای اشارههایی مفید است که کاراکترهای قابل فیلتر مشترک زیادی دارند و برای یک انتخاب متمایز به کاراکترهای زیادی نیاز است. برای نمونه ';over tw' بهراحتی اشارهٔ دوم را از میان {'very long link text one', 'very long link text two'} انتخاب میکند.
کلیدهای زیر معانی ویژهای در حالتهای اشاره (Hints) دارند:
- <CR>
- نخستین عنصر برجستهشده، یا عنصر فوکوسشدهٔ فعلی را انتخاب میکند.
- <Tab>
- فوکوس را به عنصر اشارهٔ بعدی منتقل میکند.
- <S-Tab>
- فوکوس را به عنصر اشارهٔ قبلی منتقل میکند.
- <Esc>, CTRL-C, CTRL-[
- خروج از حالت Hints بدون انتخاب یک عنصر.
- حالتهای اشاره (Hint modes):
- f
- نام مستعاری برای حالت اشارهٔ ;o است.
- F
- نام مستعاری برای حالت اشارهٔ ;t است.
- ;o
- باز کردن مکان اشاره در پنجرهٔ جاری.
- ;t
- باز کردن مکان اشاره در یک تب جدید.
- ;s
- ذخیرهٔ مقصد اشاره در مسیر پیکربندیشدهٔ `download-path'.
- ;O
- تولید اعلان `:open' با URI اشارهشده.
- ;T
- تولید اعلان `:tabopen' با URI اشارهشده.
- ;e
- باز کردن ویرایشگر پیکربندیشده (`editor-command') با محتوای عنصر فرم اشارهشده. اگر فایل در ویرایشگر ذخیره شده و ویرایشگر بسته شود، محتوای فایل به درون فیلد فرم بازگردانده میشود.
- ;i
- باز کردن تصویر اشارهشده در پنجرهٔ جاری.
- ;I
- باز کردن تصویر اشارهشده در یک تب جدید.
- ;k
- حذف (کشتن) عنصر اشارهشده از صفحه.
- ;p
- افزودن URI اشاره به انتهای صف «بعداً بخوانید»، مشابه دستور `:qpush'. این قابلیت تنها در صورتی در دسترس است که Vimb با ویژگی QUEUE کامپایل شده باشد.
- ;P
- افزودن URI اشاره به ابتدای صف «بعداً بخوانید»، مشابه دستور `:qunshift'. این قابلیت تنها در صورتی در دسترس است که Vimb با ویژگی QUEUE کامپایل شده باشد.
- ;x
- اشاره شبیه به ;o است، اما بهجای باز کردن URI اشارهشده، دستور `x-hint-command' در Vimb اجرا میشود.
- ["x];y
- کپی کردن (Yank) مکان مقصد اشاره در کلیپبورد اصلی و ثانویه و در ثبات x.
- ["x];Y
- کپی کردن توضیحات متنی یا متن فرم اشاره در کلیپبورد اصلی و ثانویه و در ثبات x.
- نحو: g;{mode}{hint}
- شروع یک حالت اشارهٔ گسترشیافته و ماندن در آن تا زمان فشردن <Esc>. مانند اشارهگذاری عادی است، با این تفاوت که پس از انتخاب یک اشاره، اشارهها همچنان نمایان میمانند تا بتوان مورد دیگری را با همان عملیاتِ مورد اول انتخاب کرد. توجه داشته باشید که حالت اشارهٔ گسترشیافته تنها میتواند با حالتهای اشارهٔ زیر ترکیب شود: I o p P s t y Y.
- حرکت (Motion)
جستجو (Searching)
- /QUERY, ?QUERY
- شروع جستجو برای QUERY در صفحهٔ جاری. / جستجو را به سمت جلو و ? به سمت عقب آغاز میکند.
- *, #
- شروع جستجو
برای متن
انتخابشدهٔ
جاری، یا در
صورت
انتخاب
نشدن متن،
برای
محتوای
کلیپبورد
اصلی یا
ثانویه. *
جستجو را به
سمت جلو و #
به سمت عقب
آغاز
میکند.
توجه داشته باشید که این دستورات متن انتخابشده را در کلیپبورد کپی (yank) میکنند و ممکن است محتوای قبلی را از آنجا حذف نمایند!
- [N]n
- جستجو برای Nمین نتیجهٔ بعدی جستجو بسته به جهت جستجوی جاری.
- [N]N
- جستجو برای Nمین نتیجهٔ قبلی جستجو بسته به جهت جستجوی جاری.
- <CR>
- انجام کلیک روی عنصری که شامل نتیجهٔ جستجوی برجستهشدهٔ جاری است.
بزرگنمایی (Zooming)
- [N]zi
- بزرگنمایی متن صفحه به میزان N گام.
- [N]zo
- کوچکنمایی متن صفحه به میزان N گام.
- [N]zI
- بزرگنمایی کامل محتوای صفحه به میزان N گام.
- [N]zO
- کوچکنمایی کامل محتوای صفحه به میزان N گام.
- zz
- بازنشانی بزرگنمایی.
کپی کردن (Yank)
- ["x]y
- کپی کردن (Yank) نشانی URI یا صفحهٔ جاری در ثبات x و کلیپبورد.
- ["x]Y
- کپی کردن بخش انتخابشدهٔ جاری در ثبات x و کلیپبورد.
حالت دستور (COMMAND MODE)
دستوراتی که در ادامه فهرست شدهاند، دستورات ex مانند Vim هستند که در جعبه ورودی (خط فرمان vimb) تایپ میشوند. دستورات ممکن است در نحو یا بخشهایی که مجاز میدانند تفاوت داشته باشند، اما در کل از یک نحو ساده پیروی میکنند.
نحو: :[:| ][N]cmd[name][!][ lhs][ rhs]
جایی که lhs (سمت چپ) نباید شامل هیچ فاصله اسکیپنشدهای باشد. نحو rhs (سمت راست) در صورت موجود بودن، به دستور بستگی دارد. در حال حاضر بخش شمارش [N] دستورات تجزیه میشود، اما در حال حاضر هیچ دستوری وجود ندارد که از شمارش استفاده کند.
دستوراتی که به صورت تعاملی تایپ میشوند معمولاً در تاریخچه دستورات و ثباتها ثبت میگردند. برای جلوگیری از این کار، میتوان پیش از دستورات یک یا چند «:» اضافی یا فاصله خالی قرار داد.
چندین
دستور که با
«|» از
یکدیگر جدا
شدهاند را
میتوان در
یک خط فرمان
واحد وارد
کرد و آنها
به صورت
متوالی
اجرا
خواهند شد.
با اسکیپ
کردن
کاراکتر
پایپ با یک
بکاسلش،
میتوان آن
را به عنوان
یک آرگومان
به دستور
اضافه کرد.
دستورات
زیر کل رشته
خط فرمان را
به صورت
لفظی
پردازش
میکنند.
این
دستورات هر
«|» را به
عنوان بخشی
از رشته
آرگومان
خود در نظر
میگیرند و
بنابراین
نمیتوان
پس از آنها
دستور
دیگری
آورد.
- -
- autocmd
- -
- cmap, cnoremap, imap, inoremap, nmap, nnoremap
- -
- eval
- -
- normal
- -
- open, tabopen
- -
- shellcmd, shellex
ویرایش خط فرمان (Command Line Editing)
- <Esc>, CTRL-[, CTRL-C
- نادیده گرفتن تمام محتوای تایپشده و بازگشت به حالت عادی (normal mode).
- <CR>
- ارسال دستور `ex` وارد شده یا عبارت جستجو جهت اجرای آن.
- CTRL-H
- حذف نویسه قبل از مکاننما.
- CTRL-W
- حذف آخرین کلمه قبل از مکاننما.
- CTRL-U
- حذف همه چیز میان مکاننما و اعلان (prompt).
- CTRL-B
- انتقال مکاننما به بلافاصله بعد از اعلان «:».
- CTRL-E
- انتقال مکاننما به بعد از اعلان در جعبه ورودی.
- CTRL-V
- ارسال مستقیم فشردن کلید بعدی به GTK.
- CTRL-R {a-z"%:/;}
- درج محتوای ثبات دادهشده در موقعیت مکاننما. همچنین بخش مربوط به دستور `:reg[ister]` را ببینید.
تاریخچه خط فرمان (Command Line History)
- <Tab>
- شروع تکمیل خودکار محتوای جعبه ورودی در جهت رو به جلو.
- <S-Tab>
- شروع تکمیل خودکار محتوای جعبه ورودی در جهت رو به عقب.
- <Up>
- یک گام به عقب در تاریخچه دستورات.
- <Down>
- یک گام به جلو در تاریخچه دستورات. کپی (Yank) انتخاب فعلی در ثبات x و کلیپبورد.
باز کردن (Open)
- :o[pen] [URI]
- باز کردن URI دادهشده در تب فعلی. اگر URI خالی باشد، «home-page» پیکربندیشده باز میشود.
- :t[abopen] [URI]
- باز کردن URI دادهشده در یک تب جدید. اگر URI خالی باشد، «home-page» پیکربندیشده باز میشود.
تبها (Tabs)
- :tabc[lose]
- بستن تب فعلی. اگر این آخرین تب باشد، پنجره مرورگر بسته میشود.
- :tabn[ext]
- رفتن به تب بعدی.
- :tabp[rev], :tabp[revious]
- رفتن به تب قبلی.
- :tabfirst
- رفتن به تب اول.
- :tablast
- رفتن به تب آخر.
نگاشت کلیدها (Key Mapping)
نگاشت کلیدها به کاربران امکان میدهد عملکرد فشردن کلیدها را تغییر دهند. هر نگاشت کلید با یک حالت (mode) مرتبط است و تنها زمانی اعمال میشود که آن حالت فعال باشد. دستورات زیر به کاربر اجازه میدهند یک توالی از فشردن کلیدها را با توالی دیگری جایگزین کند.
نحو: :{m}map {lhs} {rhs}
توجه داشته باشید که lhs با اولین فاصله پیدا شده خاتمه مییابد. اگر میخواهید در {lhs} نیز از فاصله استفاده کنید، باید آن را با یک «\» اسکیپ کنید، همانطور که در مثالها نشان داده شده است.
بخش rhs با نخستین نویسه غیرفاصله شروع میشود. اگر میخواهید rhs با یک فاصله آغاز شود، باید از «<Space>» استفاده کنید.
دستورات استاندارد نگاشت کلید برای این حالتهای m ارائه شدهاند:
- n
- حالت عادی (Normal mode): هنگام مرور به صورت عادی.
- i
- حالت درج (Insert mode): هنگام تعامل با فیلدهای متنی در یک وبسایت.
- c
- حالت خط فرمان (Command Line mode): هنگام تایپ در خط فرمان Vimb.
بیشتر کلیدها در توالی کلیدها به سادگی با نویسهای که هنگام تایپ آنها روی صفحه میبینید نمایش داده میشوند. با این حال، از آنجا که تعدادی از این نویسهها معانی خاصی دارند و تعدادی از کلیدها نمایش بصری ندارند، به یک نشانهگذاری ویژه نیاز است.
نامهای کلیدهای خاص دارای قالب <...> هستند. کلیدهای خاص زیر قابل استفاده هستند: <Left>، <Up>، <Right>، <Down> برای کلیدهای جهتنما، <Tab>، <Esc>، <CR>، <Space>، <BS>، <F1>-<F12> و <C-A>-<C-Z>. اگر توالی واقعی از کلیدها مانند «<»، «C»، «R»، «>» را میخواهید، آن را با بکاسلش اسکیپ کنید: «<CR>». اگر یک بکاسلش و به دنبال آن یک کلید خاص میخواهید، از <Bslash> استفاده کنید.
- :nm[ap] {lhs} {rhs}
- :im[ap] {lhs} {rhs}
- :cm[ap] {lhs} {rhs}
- نگاشت توالی کلید lhs به rhs برای حالتهایی که دستور نگاشت در آنها اعمال میشود. نتیجه، شامل rhs، سپس برای نگاشتهای بیشتر بررسی میشود. این کار امکان استفاده تودرتو و بازگشتی از نگاشتها را فراهم میکند.
- :cmap <C-G>h /home/user/downloads/
- یک کلید میانبر برای درج مسیر فایل در جعبه ورودی اضافه میکند. این میتواند برای دستور `:save` که میتواند به صورت «:save ^Gh» استفاده شود، مفید باشد.
- :nmap <F1> :set scripts=on<CR>:open !glib<Tab><CR>
- این کار اسکریپتها را فعال کرده و در صورت فشرده شدن کلید F1، نخستین URI نشانکگذاریشده با برچسب `glib` را جستجو کرده و فوراً باز میکند.
- :nmap \ \ 50G
- مثالی که دو فاصله را برای رفتن به ۵۰٪ صفحه نگاشت میکند.
- :nn[oremap] {lhs} {rhs}
- :ino[remap] {lhs} {rhs}
- :cno[remap] {lhs} {rhs}
- نگاشت توالی کلید lhs به rhs برای حالتی که دستور نگاشت در آن اعمال میشود. نگاشت مجدد rhs غیرمجاز میشود تا از نگاشتهای تودرتو و بازگشتی جلوگیری شود. اغلب برای بازتعریف یک دستور به کار میرود.
- :nu[nmap] {lhs}
- :iu[nmap] {lhs}
- :cu[nmap] {lhs}
- حذف نگاشت lhs برای حالت مربوطه.
نشانکها (Bookmarks)
- :bma [tags]
- ذخیره URI باز شده فعلی با برچسبهای tags در فایل نشانکها.
- :bmr [URI]
- حذف تمام نشانکها برای URI دادهشده یا در صورت مشخص نشدن، صفحه باز شده فعلی.
گردانندهها (Handlers)
گردانندهها امکان مشخص کردن اسکریپتهای خارجی را برای مدیریت روشهای جایگزین URI فراهم میکنند.
- :handler-add handler=cmd
- یک گرداننده اضافه میکند تا پیوندهای handler را به دستور خارجی cmd هدایت کند. دستور cmd میتواند شامل یک متغیر جایگزین `%s` باشد که هنگام فراخوانی دستور، با URI کامل پر خواهد شد.
- :handler-add mailto=urxvt -e mutt %s
- برای راهاندازی کلاینت ایمیل جهت پیوندهای mailto.
- :handler-add magnet=xdg-open %s
- برای باز کردن پیوندهای magnet با xdg-open.
- :handler-add ftp=urxvt -e wget %s -P ~/ftp-downloads
- برای مدیریت دانلودهای ftp از طریق wget.
- :handler-remove handler
- حذف گرداننده برای handler پیوند URI دادهشده.
میانبرها (Shortcuts)
میانبرها امکان باز کردن یک URI ساختهشده از یک الگوی نامگذاریشده همراه با پارامترهای اضافی را فراهم میکنند. اگر میانبری به نام «dd» تعریف شده باشد، میتوانید از آن با `:open dd list of parameters` برای باز کردن URI ایجادشده استفاده کنید.
میانبرها برای استفاده با موتورهای جستجو که در آنها URI استاندارد است و یک پارامتر منفرد توسط کاربر تعریف میشود، بسیار راحت هستند.
- :shortcut-add shortcut=URI
- یک میانبر
با الگوی shortcut
و URI اضافه
میکند.
الگوی URI
میتواند
شامل چندین
متغیر
جایگزین $0-$9
باشد که
هنگام
فراخوانی
میانبر با
پارامترهای
ارائهشده
پر میشوند.
پارامترهای
دادهشده
هنگام
فراخوانی
میانبر، به
تعداد
بالاترین
متغیر
جایگزین
استفادهشده
تقسیم
خواهند شد.
برای استفاده از فاصله در داخل پارامترها، میتوان پارامترها را با قرار دادن میان علامت نقلقول تکی یا دوتایی گروهبندی کرد، همانطور که در میانبر نمونه «map» نشان داده شده است.
- :shortcut-add dl=https://duckduckgo.com/lite/?q=$0
- برای راهاندازی یک موتور جستجو. میتواند با `:open dl my search phrase` فراخوانی شود.
- :shortcut-add gh=https://github.com/$0/$1
- برای ساخت URIها از پارامترهای دادهشده. میتواند با `:open gh fanglingsu vimb` فراخوانی شود.
- :shortcut-add map=https://maps.google.com/maps?saddr=$0&daddr=$1
- برای جستجوی یک مسیر؛ در صورتی که پارامترها حاوی فاصله باشند، همه به جز آخرین پارامتر باید درون نقلقول قرار گیرند، مانند: `:open map "city hall, London" railway station, London`
- :shortcut-remove shortcut
- حذف موتور جستجوی مربوط به shortcut دادهشده.
- :shortcut-default shortcut
- تنظیم میانبر مشخصشده با shortcut به عنوان پیشفرض؛ یعنی میانبری که اگر میانبری مشخص نشود و رشته مورد نظر برای باز کردن یک URI نباشد، استفاده خواهد شد. مهم نیست که shortcut از قبل در حال استفاده است یا خیر تا بتوان آن را تنظیم کرد.
تنظیمات (Settings)
- :se[t] var=value
- تنظیم مقادیر پیکربندی با نام var. برای تنظیم متغیرهای بولی (boolean) باید از 'on' و 'off' یا 'true' و 'false' استفاده کنید. رنگها به عنوان مقادیر هگزادسیمال مانند '#f57700' داده میشوند. فاصلهها یا علامتهای مساوی بیشتر در value بدون نیاز به نقلقول کار میکنند؛ به عنوان مثال: ":set sans-serif-font=Some Sans Font".
- :se[t] var+=value
- افزودن value به یک گزینه عددی، یا الحاق value به یک گزینه رشتهای. هنگامی که گزینه یک لیست جداشده با کاما باشد، یک کاما اضافه میشود، مگر اینکه مقدار خالی باشد.
- :se[t] var^=value
- ضرب کردن value در یک گزینه عددی، یا افزودن value به ابتدای یک گزینه رشتهای. هنگامی که گزینه یک لیست جداشده با کاما باشد، یک کاما اضافه میشود، مگر اینکه مقدار خالی باشد.
- :se[t] var-=value
- تفریق value از یک گزینه عددی، یا حذف value از یک گزینه رشتهای در صورت وجود. هنگامی که گزینه یک لیست جداشده با کاما باشد، یک کاما حذف میشود، مگر اینکه گزینه خالی شود.
- :se[t] var?
- نمایش مقدار تنظیمشده فعلی متغیر VAR.
- :se[t] var!
- تغییر وضعیت (toggle) مقدار متغیر بولی var و نمایش مقدار تنظیمشده جدید.
صف (Queue)
صف امکان نشانهگذاری URIها را برای خواندن در آینده فراهم میکند. این فهرست میان نمونههای مختلف Vimb به اشتراک گذاشته میشود.
- :qpu[sh] [URI]
- افزودن URI یا در صورت مشخص نشدن، URI فعلی به انتهای صف.
- :qun[shift] [URI]
- افزودن URI یا در صورت مشخص نشدن، URI فعلی به ابتدای صف.
- :qp[op]
- باز کردن قدیمیترین ورودی صف در پنجره مرورگر فعلی و حذف آن از صف.
- :qc[lear]
- حذف تمام ورودیها از صف.
دستورات خودکار (Automatic commands)
یک دستور خودکار (autocommand) دستوری است که در پاسخ به یک رویداد خاص، مانند باز شدن یک URI، به صورت خودکار اجرا میشود. دستورات خودکار بسیار قدرتمند هستند. با دقت از آنها استفاده کنید تا به شما در اجتناب از تایپ دستورات متعدد کمک کنند.
دستورات خودکار با ویژگیهای زیر ساخته میشوند:
- group
- هنگامی که آرگومان [group] داده نشده باشد، Vimb از گروه فعلی که با ':augroup' تعریف شده استفاده میکند؛ در غیر این صورت، Vimb از گروه تعریفشده با [group] استفاده مینماید. گروهها برای حذف چندین دستور خودکار گروهبندیشده مفید هستند.
- event
- میتوانید فهرستی از نامهای رویدادها را که با کاما از هم جدا شدهاند مشخص کنید. هیچ فاصلهای نباید در این فهرست استفاده شود.
- LoadStarting
- قبل از اینکه صفحه جدیدی باز شود فعال میشود. هنوز هیچ دادهای ارسال یا دریافت نشده است و بارگیری ممکن است همچنان به دلیل مشکلات انتقال با شکست مواجه شود.
- LoadStarted
- اگر صفحه جدیدی قرار باشد باز شود فعال میشود. هنوز هیچ دادهای دریافت نشده است و بارگیری ممکن است به دلیل مشکلات انتقال ناموفق باشد.
- LoadCommitted
- اگر اولین تکه داده وارد شده باشد فعال میشود، به این معنی که الزامات لازم برای انتقال برقرار شده و بارگیری در حال انجام است. این رویداد مناسب برای تغییر وضعیت تنظیمات مرتبط با محتوا مانند 'scripts'، 'plugins' و مواردی از این دست است.
- LoadFinished
- زمانی فعال میشود که همه موارد لازم برای نمایش در صفحه بارگیری شده باشند.
- DownloadStarted
- درست پس از شروع یک دانلود فعال میشود.
- DownloadFinished
- در صورتی که یک دانلود مدیریتشده توسط Vimb تمام شود فعال میشود.
- DownloadFailed
- در صورتی که یک دانلود مدیریتشده توسط Vimb شکست بخورد فعال میشود.
- pat
- فهرستی از الگوهای جداشده با کاما، که به ترتیب مطابقت داده میشوند تا بررسی شود آیا یک دستور خودکار بر روی URI مرتبط با یک رویداد اعمال میشود یا خیر. برای استفاده از ',' در الگوهای منفرد، باید آن را به صورت '\,' اسکیپ کرد.
الگوها:
- *
- با هر توالی از نویسهها مطابقت دارد. برخلاف الگوهای شل، این شامل '/' نیز میشود.
- ?
- با هر تکنویسهای به جز '/' مطابقت دارد.
- {one,two}
- با 'one' یا 'two' مطابقت دارد. هر '{'، ',' و '}' در این الگو باید با یک '\' اسکیپ شود. '*' و '?' در داخل آکولادها معنای خاصی ندارند.
- \
- برای اسکیپ کردن معنای خاص '?*{},' در الگو یا فهرست الگوها از بکاسلش استفاده کنید.
- cmd
- هر دستور `ex` که vimb آن را میشناسد. علامت ':' در ابتدا الزامی نیست. چندین دستور را میتوان با '|' از هم جدا کرد.
- :au[tocmd] [group] {event} {pat} {cmd}
- افزودن cmd به فهرست دستوراتی که Vimb به طور خودکار هنگام وقوع event برای یک URI منطبق با الگوهای pat اجرا خواهد کرد. Vimb همیشه cmd را بعد از دستورات خودکار موجود اضافه میکند، به طوری که دستورات خودکار به ترتیبی که وارد شدهاند اجرا شوند.
- :au[tocmd]! [group] {event} {pat} {cmd}
- حذف تمام دستورات خودکار مرتبط با event که الگوی آنها با pat مطابقت دارد، و افزودن دستور cmd. توجه داشته باشید که بر خلاف Vim، الگو برای یافتن دستورات خودکار جهت حذف، به صورت لفظی مطابقت داده نمیشود. Vimb الگوی دستور خودکار را با pat مطابقت میدهد. اگر [group] داده نشود، همانطور که در بالا ذکر شد، دستورات خودکار در گروه فعلی را حذف میکند.
- :au[tocmd]! [group] {event} {pat}
- حذف تمام دستورات خودکار مرتبط با event که الگوی آنها با pat در گروه دادهشده مطابقت دارد (به طور پیشفرض گروه فعلی).
- :au[tocmd]! [group] * {pat}
- حذف تمام دستورات خودکار با الگوهای منطبق با pat برای همه رویدادها در گروه دادهشده (به طور پیشفرض گروه فعلی).
- :au[tocmd]! [group] {event}
- حذف تمام دستورات خودکار برای event در گروه دادهشده (به طور پیشفرض گروه فعلی).
- :au[tocmd]! [group]
- حذف تمام دستورات خودکار در گروه دادهشده (به طور پیشفرض گروه فعلی).
- :aug[roup] {name}
- تعریف گروه دستورات خودکار name برای دستورات بعدی ":autocmd". نام "end" گروه پیشفرض را انتخاب میکند.
- :aug[roup]! {name}
- حذف گروه دستورات خودکار name.
مثال:
:aug github
: au LoadCommitted * set scripts=off|set cookie-accept=never
: au LoadCommitted http{s,}://github.com/* set scripts=on
:aug end
متفرقه (Misc)
- :cl[eardata] [dataTypes] [timespan]
- پاکسازی ناهمگام دادههای وبسایت برای فهرست دادهشده از dataTypes که در بازه زمانی گذشته timespan تغییر یافتهاند. توجه داشته باشید که dataTypes نباید حاوی فاصله باشد. اگر timespan مشخص نشود، تمام دادههای وبسایت حذف خواهند شد. توجه داشته باشید که این کار بر تمام نمونههای در حال اجرای vimb تأثیر میگذارد.
پارامتر dataTypes فهرستی جداشده با کاما از انواع زیر است:
- memory-cache
- حافظه موقت رم (Memory cache).
- disk-cache
- حافظه موقت دیسک HTTP.
- session-storage
- دادههای ذخیرهسازی نشست (Session storage).
- local-storage
- دادههای ذخیرهسازی محلی (Local storage).
- indexeddb-databases
- پایگاههای داده IndexedDB.
- plugin-data
- دادههای افزونه.
- کوکیها. توجه داشته باشید در صورتی که timespan مشخص شده باشد، کوکیها پاک نمیشوند.
- hsts-cache
- حافظه موقت امنیت انتقال سختگیرانه HTTP (HSTS).
- -
- میتواند برای پاکسازی تمام انواع دادههای شناختهشده در صورتی که timespan استفاده شده باشد، به کار رود.
پارامتر timespan به صورت توالیای از تاپلهای '[multiplier]unit' با واحدهای زیر داده میشود:
مثال:
- :cleardata
- برای پاکسازی تمام انواع دادههای شناختهشده وبسایت بدون هیچ محدودیت زمانی.
- :cleardata - 5m
- برای پاکسازی تمام انواع دادههای شناختهشده وبسایت که در ۵ دقیقه گذشته تغییر یافتهاند.
- :cleardata local-storage,session-storage,cookies
- برای پاکسازی کامل کوکیها، ذخیرهسازی محلی و ذخیرهسازی نشست بدون محدودیت زمانی.
- :cleardata disk-cache 2d4h
- برای پاکسازی حافظه موقت دیسک که در دو روز و چهار ساعت گذشته تغییر یافته است.
- :sh[ellcmd] cmd
- دستور شل cmd دادهشده را به صورت همگام اجرا میکند و خروجی را در جعبه ورودی چاپ مینماید. الگوهای زیر در cmd بسط داده میشوند: '~username'، '~/'، '$VAR' و '${VAR}'. قرار دادن یک '\' قبل از این الگوها، بسط آنها را غیرفعال میکند.
متغیرهای محیطی زیر برای دستورات شل فراخوانیشده تنظیم میشوند:
- VIMB_URI
- این متغیر هر بار که صفحه جدیدی باز میشود، توسط Vimb روی URI آن صفحه تنظیم میگردد.
- VIMB_SELECTION
- این متغیر روی متن انتخابشده فعلی در صفحه تنظیم میشود.
- VIMB_TITLE
- شامل عنوان صفحه باز شده فعلی است.
- VIMB_PID
- شامل شناسه پردازه (PID) نمونه در حال اجرای Vimb است.
- VIMB_WIN_ID
- شناسه X-Window پنجره Vimb را نگه میدارد.
- VIMB_XID
- شناسه X-Window پنجره Vimb را نگه میدارد.
- :sh[ellcmd]! cmd
- مشابه :sh[ellcmd]
اما به صورت
ناهمگام.
مثال:
:sh! /bin/sh -c 'echo "`date` $VIMB_URI" >> myhistory.txt'
- :shelle[x] cmd
- مشابه :sh[ellcmd] اما به جای چاپ خروجی در جعبه ورودی، خروجی را خط به خط به عنوان دستورات `ex` اجرا میکند.
:shellex bash -c "sqlite3 \"file:\$XDG_CONFIG_HOME/chromium/Default/History?mode=ro\" \"SELECT url, title FROM urls ORDER BY last_visit_time DESC\" | dmenu -l 20 | awk -F'|' '{print \"open \" \$1}'"
- :s[ave] [path]
- دانلود صفحه باز شده فعلی در دایرکتوری دانلود پیکربندیشده. اگر path مشخص شده باشد، تحت این نام فایل یا مسیر دانلود میشود. path بسط داده میشود و بنابراین میتواند شامل الگوهای '~/'، '${ENV}' و '~user' باشد.
- :so[urce] [file]
- خواندن دستورات ex از file.
- :q[uit]
- بستن تب فعلی. اگر این آخرین تب باشد، پنجره مرورگر بسته میشود. در صورتی که دانلودهای در حال اجرا وجود داشته باشند، این درخواست رد خواهد شد.
- :q[uit]!
- بستن تب فعلی بدون در نظر گرفتن دانلود در حال اجرا.
- :quita[ll]
- بستن تمام تبها و خروج از مرورگر. اگر در هر تبی دانلودی در حال اجرا باشد، این درخواست رد خواهد شد.
- :quita[ll]!
- بستن تمام تبها و خروج از مرورگر بدون در نظر گرفتن دانلودهای در حال اجرا.
- :reg[ister]
- نمایش محتوای تمام ثباتها.
ثباتها:
- "a — "z
- ۲۶ ثبات نامگذاریشده "a تا "z. Vimb این ثباتها را تنها زمانی که شما تعیین کنید پر میکند.
- ":
- آخرین دستور `ex` اجرا شده.
- ""
- آخرین محتوای کپیشده (yank).
- "%
- نشانی URI باز شده فعلی.
- "/
- آخرین عبارت جستجو.
- ";
- شامل آخرین URL ارجاعدادهشده (hinted).
- :e[val] javascript
- اجرای کد
javascript
دادهشده
در صفحه
فعلی و
نمایش
مقدار
ارزیابیشده.
مثال: :eval document.cookie
- :e[val]! javascript
- مشابه :eval، اما چیزی در جعبه ورودی چاپ نمیشود.
- :no[rmal] [cmds]
- اجرای
دستورات
حالت عادی
cmds. این امر
امکان
اجرای
دستورات
حالت عادی
تایپشده
در جعبه
ورودی را
فراهم
میکند.
دستورات cmds نمیتوانند با فاصله شروع شوند. یک شمارنده ۱ (یک) قبل از آن قرار دهید، "1 " یک فاصله است.
مثال: :set scripts!|no! R
- :no[rmal]! [cmds]
- مشابه :normal، اما هیچ نگاشتی روی cmds اعمال نمیشود.
- :ha[rdcopy]
- چاپ سند فعلی. باز کردن یک کادر گفتگوی رابط گرافیکی که در آن میتوانید چاپگر، تعداد نسخهها، جهت صفحه و غیره را انتخاب کنید.
حالت ورودی (INPUT MODE)
- <Esc>, CTRL-[
- بازگشت به حالت عادی.
- CTRL-O
- دستور بعدی را بهعنوان یک دستور حالت عادی اجرا کرده و به حالت ورودی بازمیگردد.
- CTRL-T
- ویرایشگر پیکربندیشده را با محتوای فیلد فرم فعلی باز میکند.
- CTRL-V
- فشردن کلید بعدی را مستقیماً به WebKit ارسال میکند.
- CTRL-Z
- ورود به حالت عبور مستقیم (pass-through mode).
تکمیل خودکار (COMPLETIONS)
تکمیلهای خودکار با فشردن `<Tab>` یا `<S-Tab>` در جعبه ورودیِ فعال فراخوانی میشوند. بسته به محتوای درجشده فعلی، تکمیلهای متفاوتی آغاز میشوند. تکمیل خودکار از نویسههای تایپشده اضافی برای فیلتر کردن فهرست تکمیل ارائهشده استفاده میکند.
- commands
- تکمیل خودکار دستورات زمانی شروع میشود که حداقل `:` در جعبه ورودی نمایش داده شده باشد. اگر نویسههای اولیه وارد شده باشند، تکمیل خودکار دستوراتی را جستجو میکند که با نویسههای ارائهشده آغاز میشوند.
- settings
- تکمیل خودکار نام تنظیمات در صورتی آغاز میشود که حداقل `:set ` در جعبه ورودی نمایش داده شده باشد و همچنین با تنظیماتی که با پیشوند تایپشده شروع میشوند مطابقت مییابد.
- history
- تاریخچه URIها برای دستورات `:open ` و `:tabopen ` نمایش داده میشود. این تکمیل خودکار هر کلمه ارائهشده را در URI و عناوین تاریخچه جستجو میکند. تنها مواردی از تاریخچه نمایش داده میشوند که عنوان یا URI آنها شامل تمامی برچسبها باشد.
- :open foo bar<Tab>
- تنها URIهایی را تکمیل میکند که شامل کلمات foo و bar باشند.
- bookmarks
- تکمیل نشانکها مشابه تکمیل تاریخچه است، اما فقط با برچسبهای نشانکها مطابقت مییابد. تکمیل نشانک با `:open !`، `:tabopen !` یا `:bmr ` آغاز میشود و یک جستجوی پیشوندی برای تمام کلمات ارائهشده در برچسبهای نشانک انجام میدهد.
- :open !foo ba
- با تمام نشانکهایی که برچسبهای آنها با "foo" و "ba" شروع میشوند مطابقت خواهد داشت. اگر نشانک هیچ برچسبی نداشته باشد، نشانی بر اساس `.' و `/' به برچسبها تفکیک میشود.
- :bmr tag
- با تمام نشانکهایی که برچسبهای آنها با "tag" شروع میشوند مطابقت خواهد داشت.
- bookmark tags
- تکمیل برچسبهای نشانک اجازه درج نشانکهای قبلاً استفادهشده را برای دستورات `:bma ` میدهد.
- search
- تکمیل جستجو یک فهرست فیلترشده از جستجوهای قبلاً انجامشده را ارائه میدهد. این تکمیل با `/` یا `?` در جعبه ورودی آغاز میشود و برای نویسههای بعدی که تایپ میشوند یک مقایسه پیشوندی انجام میدهد.
تنظیمات (SETTINGS)
تمامی تنظیمات فهرستشده در زیر را میتوان با دستور `:set' تنظیم کرد. برای ساختار نحوی، به Settings در بخش COMMAND MODE مراجعه کنید.
- allow-file-access-from-file-urls(bool)
- مشخص میکند که آیا دسترسی به فایل از نشانیهای فایل (file URLs) مجاز است یا خیر. بهطور پیشفرض، هنگامی که چیزی با استفاده از یک URI فایل بارگیری میشود، درخواستهای مبدا متقاطع به سایر منابع فایلی مجاز نیستند.
- allow-universal-access-from-file-urls(bool)
- مشخص میکند که آیا جاوااسکریپتِ در حال اجرا در بستر یک نشانی با طرحواره فایل (file scheme URL) باید اجازه دسترسی به محتوا از هر مبدایی را داشته باشد یا خیر. بهطور پیشفرض، هنگامی که چیزی با استفاده از یک نشانی با طرحواره فایل بارگیری میشود، دسترسی به سیستم فایل محلی و فضای ذخیرهسازی محلی دلخواه مجاز نیست.
- caret(bool)
- فعال یا غیرفعال بودن ناوبری صفحهکلید بهبودیافته از نظر دسترسیپذیری.
- سیاست پذیرش کوکی: {`always'، `never'، `origin' (پذیرش تمام کوکیهای غیرشخص ثالث)}.
- closed-max-items (int)
- حداکثر تعداد آخرین نشانیهای وب بستهشده ذخیرهشده. اگر closed-max-items روی 0 تنظیم شود، نشانیهای بستهشده ذخیره نخواهند شد.
- completion-css (string)
- استایل CSS اعمالشده به موارد فهرست تکمیل جعبه ورودی.
- completion-hover-css (string)
- استایل CSS اعمالشده به مورد فهرست تکمیل جعبه ورودی که نشانگر موشواره در حال حاضر روی آن قرار دارد.
- completion-selected-css (string)
- استایل CSS اعمالشده به مورد فهرست تکمیل جعبه ورودی که در حال حاضر انتخاب شده است.
- cursiv-font (string)
- خانواده قلم پیشفرضی که برای محتوای با قلم شکسته (cursive) استفاده میشود.
- dark-mode (bool)
- فعال یا غیرفعال بودن حالت تاریک. وبسایتها میتوانند از پرسمان رسانهای `prefers-color-scheme' برای تنظیم استایلها مطابق با این گزینه استفاده کنند.
- default-charset (string)
- مجموعه نویسه (charset) متنی پیشفرض که هنگام تفسیر محتوایی با مجموعه نویسه نامشخص استفاده میشود.
- default-font (string)
- خانواده قلم پیشفرضی که برای محتوایی که قلمی برای آن مشخص نشده است استفاده میشود.
- default-zoom (int)
- سطح بزرگنمایی پیشفرض کل محتوا (Full-Content) بر حسب درصد. مقدار پیشفرض 100 است.
- download-command (string)
- دستوری با جاینگهدار '%s' که در صورت فعال بودن 'download-use-external'، برای دانلود یک URI فراخوانی خواهد شد.
- متغیرهای محیطی اضافی زیر در دسترس هستند:
- $VIMB_URI
- نشانی (URI) صفحه بازشده فعلی؛ معمولاً صفحهای که دانلود از آن شروع شده است و با نام ارجاعدهنده (referer) نیز شناخته میشود.
- $VIMB_DOWNLOAD_PATH
- مقدار تنظیمشده 'download-path' که معمولاً برای دانلودها استفاده میشود.
- :set download-command=/bin/sh -c "cd '$VIMB_DOWNLOAD_PATH' && curl -sLJOC - -e '$VIMB_URI' %s"
- download-path (string)
- مسیر پوشه پیشفرض دانلود. اگر پوشه دانلودی تنظیم نشده باشد، موارد دانلودشده در $HOME/Downloads ذخیره میشوند. این مسیر باید یک مسیر مطلق باشد. برای گسترش مسیر نسبی یا متغیرهای محیطی میتوانید از دستور :shellex استفاده کنید:
- :shellex sh -c "echo -n :set download-path=; realpath ~/downloads/"
- download-use-external (bool)
- مشخص میکند که آیا ابزار دانلود خارجی تنظیمشده در 'download-command' باید برای مدیریت دانلودها استفاده شود یا خیر. در صورت غیرفعال بودن، Vimb مدیریت دانلود را به عهده میگیرد.
- editor-command (string)
- دستوری با جاینگهدار '%s' که در صورت باز شدن فیلد فرم با $EDITOR فراخوانی میشود تا ویرایشگری مانند `x-terminal-emulator -e vim %s' را اجرا کند. برای استفاده از Gvim بهعنوان ویرایشگر، لازم است آن را با `-f' فراخوانی کنید تا در پیشزمینه اجرا شود.
- font-size (int)
- اندازه قلم پیشفرض برای نمایش متن.
- fullscreen (bool)
- نمایش پنجره فعلی بهصورت تمامصفحه.
- hardware-acceleration-policy (string)
- این تنظیم نحوه فعالسازی و غیرفعالسازی شتابدهی سختافزاری را تعیین میکند.
- ondemand
- هنگامی که محتوای وب درخواست کند، شتابدهی سختافزاری را فعال کرده و با رفع نیاز مجدداً آن را غیرفعال میکند.
- always
- فعال بودن همیشگی شتابدهی سختافزاری را اجباری میکند.
- never
- آن را بهطور کامل غیرفعال میکند. توجه داشته باشید که غیرفعال کردن شتابدهی سختافزاری ممکن است باعث شود برخی از وبسایتها بهدرستی رندر نشوند یا پردازنده (CPU) بیشتری مصرف کنند.
- header (list)
- فهرست
جداشده با
کاما از
سرآیندهایی
که جایگزین
سرآیندهای
پیشفرض
ارسالی
توسط WebKit یا
سرآیندهای
جدید
میشوند.
فرمت عناصر
فهرست
سرآیند
بهصورت `name[=[value]]'
است.
توجه داشته باشید که این سرآیندها جایگزین سرآیندهای موجود خواهند شد. اگر بعد از نام سرآیند هیچ '=' وجود نداشته باشد، کل سرآیند از درخواست حذف میشود؛ اگر '=' وجود داشته باشد، به این معنی است که مقدار سرآیند روی یک مقدار خالی تنظیم شده است.
توجه داشته باشید که WebKit در صورت بارگیری مجدد صفحه، از سرآیندهای تنظیمشده قبلی مجدداً استفاده میکند. بنابراین اگر سرآیندهایی حذف شوند که قبلاً برای دسترسی به صفحهای خاص استفاده میشدند و صفحه مجدداً بارگیری شود یا از طریق تاریخچه عقب/جلو باز شود، آن سرآیند همچنان ارسال خواهد شد. برای اعمال صحیح تنظیمات سرآیند جدید، لازم است صفحه دیگری درخواست شود یا صفحه فعلی مجدداً با `O<Cr>` باز شود.
برای استفاده از '=' درون مقدار یک سرآیند، مقدار باید همانطور که در مثال برای سرآیند Cookie نشان داده شده است، داخل نقلقول قرار گیرد.
- :set header=DNT=1,User-Agent,Cookie='name=value'
- سرآیند 'Do Not Track' را با هر درخواست ارسال میکند و سرآیند User-Agent را بهطور کامل از درخواست حذف مینماید.
- hint-follow-last (bool)
- اگر روشن (on) باشد، vimb بهطور خودکار آخرین راهنمای (hint) باقیمانده در صفحه را دنبال میکند. اگر خاموش (off) باشد، راهنماها تنها در صورت فشرده شدن enter اجرا میشوند.
- hint-keys-same-length (bool)
- اگر روشن (on) باشد، تمام برچسبهای راهنما دارای طول یکسانی خواهند بود تا هیچ راهنمایی مبهم نباشد.
- hint-timeout (int)
- مدتزمان انتظار پیش از دنبال کردن خودکار یک راهنمای عددی غیرمنحصربهفرد. برای غیرفعال کردن اجرای خودکار راهنماها، این مقدار را روی 0 قرار دهید.
- hint-keys (string)
- کلیدهای مورداستفاده برای برچسبگذاری و انتخاب راهنماها. با مقدار پیشفرض آن، هر راهنما دارای یک برچسب منحصربهفرد است که میتوان آن را برای انتخاب راهنما تایپ کرد، در حالی که تمام نویسههای دیگر برای فیلتر کردن راهنماها بر اساس متن آنها استفاده میشوند. با مقداری مانند asdfg;lkjh، هر راهنما بر اساس نویسههای ردیف اصلی صفحهکلید (home row) برچسبگذاری میشود.
- اگر رشته hint-keys با '0' شروع شود، کلیدها مطابق با قوانین برچسبگذاری عددی در نظر گرفته میشوند، بهطوری که اولین نویسه برچسب هرگز با '0' آغاز نخواهد شد.
- توجه داشته باشید که تطابق راهنما با برچسب ساختهشده از hint-keys به حروف کوچک و بزرگ حساس است. از این نظر vimb با برخی دیگر از مرورگرها که برچسبهای راهنما را با حروف بزرگ نمایش میدهند اما آنها را با حروف کوچک تطبیق میدهند متفاوت است.
- برای داشتن برچسبهای راهنما با حروف بزرگ، میتوان CSS زیر را به فایل `style.css' در پوشه پیکربندی vimb اضافه کرد:
- "span[vimbhint="label"] {text-transform: uppercase !important;}"
- hint-match-element (bool)
- اگر روی 'true' تنظیم شود، نویسههای تایپشدهای که بخشی از 'hint-keys' تنظیمشده نیستند، برای فیلتر کردن عناصر DOM نشانهگذاریشده بر اساس مقدار متنی آنها استفاده میشوند. اگر 'hint-keys' بهجای اعداد روی نویسهها تنظیم شده باشد، غیرفعال کردن تطبیق عناصر با 'hint-match-element=false' میتواند مفید باشد.
- histignore (string)
- تعیین میکند که آیا یک URI باید در فایل تاریخچه ذخیره شود یا خیر. این گزینه باید یک عبارت منظم گسترشیافته معتبر پازیکس (POSIX Extended Regular Expression) باشد. اگر URI با این عبارت منظم مطابقت داشته باشد، در تاریخچه ذخیره نخواهد شد. اگر این گزینه خالی باشد، هر URI در تاریخچه ذخیره خواهد شد.
- history-max-items (int)
- حداکثر تعداد موارد منحصربهفرد ذخیرهشده در تاریخچه جستجو، دستورات یا URI. اگر history-max-items روی 0 تنظیم شود، فایل تاریخچه تغییر نخواهد کرد. این تنظیم در صورت مشخص بودن گزینه --incognito هیچ اثری ندارد.
- home-page (string)
- صفحه خانگی که در صورت باز شدن vimb بدون URI نمایش داده میشود.
- html5-database (bool)
- فعال یا غیرفعال بودن پشتیبانی از پایگاه داده SQL سمت کاربر در HTML5. پایگاه داده SQL سمت کاربر به صفحات وب اجازه میدهد دادههای ساختاریافته را ذخیره کرده و بتوانند از SQL برای دستکاری ناهمگام آن دادهها استفاده کنند.
- html5-local-storage (bool)
- فعال یا غیرفعال بودن پشتیبانی از localStorage در HTML5. قابلیت localStorage دسترسی ذخیرهسازی همگام و سادهای را فراهم میکند.
- images (bool)
- تعیین میکند که آیا تصاویر باید بهطور خودکار بارگیری شوند یا خیر.
- incsearch (bool)
- هنگام تایپ دستور جستجو، محل تطابق الگوی تایپشده تا آن لحظه را نشان میدهد.
- input-autohide (bool)
- در صورت فعال بودن، جعبه ورودی هر زمان که حاوی متنی نباشد مخفی خواهد شد.
- input-css (string)
- استایل CSS اعمالشده به جعبه ورودی در حالت عادی.
- input-error-css (string)
- استایل CSS اعمالشده به جعبه ورودی هنگام نمایش خطا.
- intelligent-tracking-prevention (bool)
- فعال یا غیرفعال بودن قابلیت جلوگیری از ردیابی هوشمند WebKit موسوم به (ITP).
- javascript-can-access-clipboard (bool)
- مشخص میکند که آیا جاوااسکریپت مجاز به خواندن از کلیپبورد است یا خیر. این گزینه مانع نوشتن جاوااسکریپت در کلیپبورد نمیشود؛ فقط دسترسی خواندن توسط تنظیمات زیربنایی WebKit کنترل میگردد.
- javascript-can-open-windows-automatically (bool)
- مشخص میکند که آیا جاوااسکریپت میتواند پنجرههای بازشو (popup) را بهطور خودکار بدون تعامل کاربر باز کند یا خیر.
- javascript-enable-markup (bool)
- فعال یا غیرفعال بودن نشانهگذاری جاوااسکریپت. غیرفعال کردن آن میتواند در برخی سیستمهای قدیمیتر (مانند ppc، ppc64 و غیره) که پشتیبانی کاملی از جاوااسکریپت ندارند، برای اجرای صفحات وب بدون بروز خرابی مفید باشد.
- geolocation (string)
- کنترل دسترسی وبسایت به API موقعیت جغرافیایی {`always'، `never'، `ask' (نمایش اعلان در هر بار)}
- media (bool)
- فعال یا غیرفعال کردن پشتیبانی از تمامی رسانهها. هنگام غیرفعال بودن، WebKitGTK تلاشی برای پخش محتوای صوتی یا ویدیویی نخواهد کرد، که این میتواند در سیستمهایی که GStreamer بهطور کامل پیکربندی نشده است یا برای جلوگیری از خرابیهای ناشی از نبود افزایههای GStreamer (مانند autoaudiosink) مفید باشد.
- media-playback-allows-inline (bool)
- مشخص میکند که آیا پخش رسانه فقط بهصورت تمامصفحه است یا پخش درونخطی (inline) نیز مجاز است. تنظیم آن روی false مشخص میکند که پخش رسانه باید همیشه تمامصفحه باشد.
- media-playback-requires-user-gesture (bool)
- مشخص میکند که آیا برای شروع پخش رسانه یا بارگیری آن به اقدام کاربر (مانند کلیک کردن روی دکمه پخش) نیاز است یا خیر. تنظیم آن روی on، برای شروع پخش یا بارگیری رسانه به اقدام کاربر نیاز خواهد داشت.
- media-stream (bool)
- فعال یا غیرفعال کردن پشتیبانی از MediaSource در صفحات. قابلیت MediaSource یک طرح پیشنهادی آزمایشی است که HTMLMediaElement را گسترش میدهد تا به جاوااسکریپت اجازه دهد جریانهای رسانهای را برای پخش تولید کند.
- mediasource (bool)
- فعال یا غیرفعال کردن پشتیبانی از MediaSource در صفحات. قابلیت MediaSource یک طرح پیشنهادی آزمایشی است که HTMLMediaElement را گسترش میدهد تا به جاوااسکریپت اجازه دهد جریانهای رسانهای را برای پخش تولید کند.
- minimum-font-size (int)
- حداقل اندازه قلم مورد استفاده برای نمایش متن.
- monospace-font (string)
- خانواده قلم پیشفرضی که برای محتوای با قلم تکفاصله (monospace) استفاده میشود.
- monospace-font-size (int)
- اندازه قلم پیشفرض برای قلم تکفاصله.
- notification (string)
- کنترل دسترسی وبسایت به API اعلانها، که اعلانها را از طریق dbus ارسال میکند. {`always'، `never'، `ask' (نمایش اعلان در هر بار)}
- print-backgrounds (bool)
- مشخص میکند که آیا تصاویر پسزمینه هنگام چاپ باید رسم شوند یا خیر.
- prevent-newwindow (bool)
- مشخص میکند که آیا پیوندهایی که معمولاً در یک برگه جدید باز میشوند، بهجای آن در برگه فعلی باز شوند یا خیر. این گزینه بر پیوندهای اجراشده از طریق راهنماها (hinting) اثری ندارد.
- sans-serif-font (string)
- خانواده قلم پیشفرضی که برای محتوای با قلم بدون دندانه (sans-serif) استفاده میشود.
- scripts (bool)
- تعیین میکند که آیا جاوااسکریپت درون یک صفحه اجرا شود یا خیر.
- scroll-step (int)
- تعداد پیکسلهایی که در صورت استفاده از 'j' یا 'k'، مرورگر vimb پیمایش میکند.
- scroll-multiplier (int)
- ضریب افزایش فاصله پیمایش در صورتی که پنجره با چرخ موشواره پیمایش شود.
- serif-font (string)
- خانواده قلم پیشفرضی که برای محتوای با قلم دندانهدار (serif) استفاده میشود.
- show-titlebar (bool)
- تعیین میکند که آیا نوار عنوان نمایش داده شود یا خیر (در سیستمهایی که تزیینات پنجره را ارائه میدهند). پیشفرض true است.
- site-specific-quirks (bool)
- راهحلهای سازگاری ویژه هر سایت (compatibility workarounds) را فعال میکند.
- smooth-scrolling (bool)
- فعال یا غیرفعال کردن پشتیبانی از پیمایش نرم (smooth scrolling).
- فعال یا غیرفعال بودن ناوبری فضایی (Spatial Navigation). این ویژگی شامل امکان ناوبری بین عناصر قابل فوکوس در یک صفحه وب، مانند ابرپیوندها و کنترلهای فرم، با استفاده از کلیدهای جهتنما (چپ، راست، بالا و پایین) است. بهعنوان مثال، اگر کاربری کلید راست را فشار دهد، روشهای اکتشافی تعیین میکنند که آیا عنصری وجود دارد که کاربر بخواهد به سمت راست به آن برسد، و اگر چندین عنصر وجود داشته باشد، احتمالاً کدام عنصر مد نظر اوست.
- spell-checking (bool)
- فعال یا غیرفعال کردن قابلیت بررسی املا.
- spell-checking-languages (string)
- تعیین
فهرستی
جداشده با
کاما از
زبانهای
بررسی املا
برای
استفاده در
غلطیابی
املایی.
رشته محلی (locale) معمولاً به صورت lang_COUNTRY است، که در آن lang یک کد زبان ISO-639 و COUNTRY یک کد کشور ISO-3166 است؛ به عنوان مثال، sv_FI برای سوئدیِ مورداستفاده در فنلاند یا pt_BR برای پرتغالیِ مورداستفاده در برزیل. - status-bar (bool)
- مشخص میکند که آیا نوار وضعیت باید نمایش داده شود یا خیر.
- status-bar-show-settings (bool)
- مشخص میکند که آیا تنظیمات در نوار وضعیت نمایش داده شوند یا خیر. این گزینه در سمت راست نوار وضعیت برخی از تنظیمات زمان اجرا را که در زمان کامپایل مشخص شدهاند نمایش میدهد.
- status-css (string)
- استایل CSS اعمالشده به نوار وضعیت در صفحات غیر https.
- status-ssl-css (string)
- استایل CSS اعمالشده به نوار وضعیت در صفحات https دارای گواهی معتبر.
- status-ssl-invalid-css (string)
- استایل CSS اعمالشده به نوار وضعیت در صفحات https دارای گواهی نامعتبر.
- strict-ssl (bool)
- اگر 'on' باشد، vimb یک سایت https نامعتبر را بارگیری نخواهد کرد.
- stylesheet (bool)
- اگر 'on' باشد، شیوهنامه (style-sheet) تعریفشده توسط کاربر استفاده میشود.
- tabs-to-links (bool)
- مشخص
میکند که
آیا کلید Tab
بین عناصر
صفحه جابجا
میشود یا
خیر.
در صورت true بودن، فشردن کلید Tab روی عنصر بعدی در نمای وب فوکوس میکند. در غیر این صورت، نمای وب فشردن کلید Tab را مانند فشردن کلید معمولی تفسیر خواهد کرد. اگر عنصر انتخابشده قابل ویرایش باشد، کلید Tab باعث درج یک نویسه تب میشود.
- timeoutlen (int)
- مدتزمان بر حسب میلیثانیه که منتظر تکمیل یک کد کلید یا توالی کلید نگاشتشده میماند.
- user-agent (string)
- رشته عامل کاربر (user-agent) مورداستفاده توسط WebKit.
- user-scripts (bool)
- اگر 'on' باشد، اسکریپتهای کاربر به داخل تمام صفحات تزریق میشوند.
- webaudio (bool)
- فعال یا غیرفعال کردن پشتیبانی از WebAudio در صفحات. قابلیت WebAudio یک طرح پیشنهادی آزمایشی است که به صفحات وب اجازه میدهد دادههای صوتی WAVE را از طریق جاوااسکریپت تولید کنند.
- webgl (bool)
- فعال یا غیرفعال کردن پشتیبانی از WebGL در صفحات.
- webinspector (bool)
- تعیین میکند که آیا ابزارهای توسعهدهنده، مانند Web Inspector، فعال باشند یا خیر.
- x-hint-command (string)
- دستور مورداستفاده در صورت اجرای حالت راهنمای ;x. این دستور میتواند هر رشته دستوری vimb باشد. توجه داشته باشید که این دستور از طریق سازوکار نگاشت vimb اجرا میشود، بنابراین ممکن است با افزودن یا تغییر نگاشتها، رفتار تغییر کند.
- :set x-hint-command=:sh! curl -e <C-R>% <C-R>;
- این دستور جعبه ورودی را با دستور دانلود از پیش پرشده پر میکند و `<C-R>%' را با نشانی (URI) فعلی و `<C-R>;' را با URI عنصر نشانهگذاریشده جایگزین مینماید.
- :nnoremap ;f :set x-hint-command=:sh! firefox '<C-R>;<CR><CR>;x
- این دستور باعث میشود توالی کلید ";f" راهنمایی را آغاز کند و سپس URI نشانهگذاریشده را در firefox باز کند.
فایلها (FILES)
- $XDG_CONFIG_HOME/vimb[/PROFILE]
- دایرکتوری دادههای پیکربندی. در صورت اجرا با پارامتر -p PROFILE، پیکربندی از این زیردایرکتوری خوانده میشود.
- config
- دستورات Ex از این فایل هنگام راهاندازی اجرا میشوند.
- scripts.js
- این فایل میتواند برای اجرای اسکریپتهای کاربر استفاده شود که به درون هر صفحه بازشده تزریق میشوند.
- style.css
- فایل شیوهنامههای CSS تعریفشده توسط کاربر. اگر متغیر پیکربندی `stylesheet` فعال باشد، از این فایل استفاده میشود.
- $XDG_DATA_HOME/vimb[/PROFILE]
- دایرکتوری دادههای زمان اجرا. در صورت اجرا با پارامتر -p PROFILE، فایلهای داده در این زیردایرکتوری نوشته میشوند.
- فضای ذخیرهسازی کوکی Sqlite. در صورت تنظیم گزینه --incognito، این فایل دستنخورده باقی میماند.
- closed
- شامل URIهای آخرین پنجرههای بستهشده مرورگر است. در صورت تنظیم گزینه --incognito، این فایل دستنخورده باقی میماند.
- history
- این فایل تاریخچه URIهای یکتای بازشده را نگه میدارد. در صورت تنظیم گزینه --incognito، این فایل دستنخورده باقی میماند.
- bookmark
- این فایل فهرست URIهای نشانهگذاریشده را همراه با برچسبها نگه میدارد.
- command
- این فایل تاریخچه دستورات و عبارتهای جستجوی انجامشده از طریق کادر ورودی را نگه میدارد. در صورت تنظیم گزینه --incognito، این فایل دستنخورده باقی میماند.
- queue
- صف مطالعه در آینده (read it later) را که با `qpush` پر شده است، نگه میدارد.
- search
- این فایل تاریخچه عبارتهای جستجو را نگه میدارد. در صورت تنظیم گزینه --incognito، این فایل دستنخورده باقی میماند.
متغیرهای محیطی (ENVIRONMENT)
- http_proxy, HTTP_PROXY
- اگر هر یک از این متغیرهای محیطی خالی نباشد، از میزبان و پورت اختیاری مشخصشده برای تونل کردن درخواستها استفاده میشود. به عنوان مثال: HTTP_PROXY=localhost:8118.
گزارش باگها (REPORTING BUGS)
گزارش
باگها را
به صفحه
اصلی پروژه
در https://github.com/fanglingsu/vimb/issues
یا در فهرست
ایمیل
https://lists.sourceforge.net/lists/listinfo/vimb-users
ارسال
کنید.
نویسنده (AUTHOR)
Daniel Carl
| 09 2026 | vimb/4.0.0 |