شكر خاص لأكبر الرعاة:
تطبيقك جاهز للمؤسسات.
ابدأ البيع لعملاء المؤسسات باستخدام بضعة أسطر فقط من التعليمات البرمجية.
أضف تسجيل الدخول الموحد (والمزيد) في دقائق بدلاً من أشهر.
الاعوجاج، المحطة الذكية
قم بتشغيل الأوامر مثل المستخدم القوي الذي يتمتع بالذكاء الاصطناعي وفريق التطوير الخاص بك
المعرفة في محطة واحدة سريعة وبديهية. لنظام التشغيل MacOS أو Linux.
يدعم bat
تمييز بناء الجملة لعدد كبير من لغات البرمجة والترميز:
يتواصل bat
مع git
لإظهار التعديلات المتعلقة بالفهرس (انظر الشريط الجانبي الأيسر):
يمكنك استخدام الخيار -A
/ --show-all
لإظهار وتمييز الأحرف غير القابلة للطباعة:
افتراضيًا، يقوم bat
بتوجيه مخرجاته إلى جهاز النداء (على سبيل المثال less
) إذا كان الإخراج كبيرًا جدًا بالنسبة لشاشة واحدة. إذا كنت تفضل عمل bat
مثل cat
طوال الوقت (عدم إخراج الصفحة مطلقًا)، فيمكنك تعيين --paging=never
كخيار، إما في سطر الأوامر أو في ملف التكوين الخاص بك. إذا كنت تنوي استخدام الاسم المستعار cat
bat
في تكوين الصدفة، فيمكنك استخدام alias cat='bat --paging=never'
للحفاظ على السلوك الافتراضي.
حتى مع مجموعة النداء، لا يزال بإمكانك استخدام bat
لتسلسل الملفات. عندما يكتشف bat
محطة غير تفاعلية (على سبيل المثال، عندما تقوم بالتوصيل إلى عملية أخرى أو إلى ملف)، فإن bat
سيكون بمثابة بديل مباشر لـ cat
ويعود إلى طباعة محتويات الملف العادي، بغض النظر عن خيار --pager
قيمة.
عرض ملف واحد على المحطة
> الخفافيش README.md
عرض ملفات متعددة في وقت واحد
> الخفافيش src/*.rs
القراءة من stdin، وتحديد بناء الجملة تلقائيًا (لاحظ أن التمييز لن يعمل إلا إذا كان من الممكن تحديد بناء الجملة من السطر الأول من الملف، عادةً من خلال shebang مثل #!/bin/sh
)
> الضفيرة -s https://sh.rustup.rs | الخفافيش
القراءة من stdin، وتحديد اللغة بشكل صريح
> yaml2json .travis.yml | json_pp | بات -l json
إظهار وتمييز الأحرف غير القابلة للطباعة:
> الخفافيش -A /etc/hosts
استخدمه كبديل cat
:
Bat > note.md # قم بإنشاء ملف جديد بسرعة header.md content.md footer.md > document.md Bat -n main.rs # إظهار أرقام الأسطر (فقط)bat f - g # إخراج 'f'، ثم stdin، ثم 'g'.
fzf
يمكنك استخدام bat
كمعاين لـ fzf
. للقيام بذلك، استخدم خيار bat
s --color=always
لفرض الإخراج الملون. يمكنك أيضًا استخدام خيار --line-range
لتقييد أوقات التحميل للملفات الطويلة:
fzf --preview "bat --color=always --style=numbers --line-range=:500 {}"
لمزيد من المعلومات، راجع README
الخاص بـ fzf
.
find
أو fd
يمكنك استخدام -exec
خيار find
لمعاينة جميع نتائج البحث باستخدام bat
:
العثور على ... -exec الخفافيش {} +
إذا كنت تستخدم fd
، فيمكنك استخدام الخيار -X
/ --exec-batch
للقيام بنفس الشيء:
fd … -X الخفافيش
ripgrep
باستخدام batgrep
، يمكن استخدام bat
كطابعة لنتائج بحث ripgrep
.
إبرة باتريب src/
tail -f
يمكن دمج bat
مع tail -f
لمراقبة ملف معين بشكل مستمر مع تمييز بناء الجملة.
الذيل -f /var/log/pacman.log | Bat --paging=never -l log
لاحظ أنه يتعين علينا إيقاف تشغيل الترحيل حتى يعمل هذا. لقد حددنا أيضًا بناء الجملة بشكل صريح ( -l log
)، حيث لا يمكن اكتشافه تلقائيًا في هذه الحالة.
git
يمكنك دمج bat
مع git show
لعرض إصدار أقدم من ملف معين مع تمييز بناء الجملة المناسب:
عرض جيت v0.6.0:src/main.rs | الخفافيش -ل روبية
git diff
يمكنك دمج bat
مع git diff
لعرض الأسطر حول تغييرات التعليمات البرمجية مع تمييز بناء الجملة المناسب:
باتديف () { git diff --name-only --relative --diff-filter=d | xargs الخفافيش --diff }
إذا كنت تفضل استخدام هذا كأداة منفصلة، فاطلع على batdiff
في bat-extras
.
إذا كنت تبحث عن مزيد من الدعم لعمليات git و diff، فراجع delta
.
xclip
يمكن لأرقام الأسطر وعلامات تعديل Git في مخرجات bat
أن تجعل من الصعب نسخ محتويات الملف. لمنع ذلك، يمكنك استدعاء bat
باستخدام الخيار -p
/ --plain
أو ببساطة توجيه الإخراج إلى xclip
:
بات main.cpp | com.xclip
سيكتشف bat
أنه تتم إعادة توجيه الإخراج وسيقوم بطباعة محتويات الملف العادي.
man
يمكن استخدام bat
كجهاز استدعاء للتلوين لـ man
، عن طريق ضبط متغير البيئة MANPAGER
:
تصدير MANPAGER = "sh -c 'col -bx |bat -l man -p'"man 2 حدد
(استبدل bat
بـ batcat
إذا كنت تستخدم Debian أو Ubuntu)
قد يكون من الضروري أيضًا تعيين MANROFFOPT="-c"
إذا واجهت مشاكل في التنسيق.
إذا كنت تفضل تجميع هذا في أمر جديد، فيمكنك أيضًا استخدام batman
.
لاحظ أن بناء جملة Manpage تم تطويره في هذا المستودع ولا يزال يحتاج إلى بعض العمل.
لاحظ أيضًا أن هذا لن ينجح مع تطبيق Mandocs man
.
prettier
/ shfmt
/ rustfmt
البرنامج النصي prettybat
عبارة عن غلاف يقوم بتنسيق التعليمات البرمجية وطباعتها باستخدام bat
.
--help
رسائل المساعدة يمكنك استخدام bat
لتلوين نص المساعدة: $ cp --help | bat -plhelp
يمكنك أيضًا استخدام غلاف حول هذا:
# في .bashrc/.zshrc/*rcaliasbathelp='bat --plain --language=help'help() {"$@" --help 2>&1 | مساعدة في الحمام }
ثم يمكنك القيام بـ $ help cp
أو $ help git commit
.
عندما تستخدم zsh
، يمكنك أيضًا استخدام الأسماء المستعارة العامة لتجاوز -h
و --help
بالكامل:
الاسم المستعار -g -- -h='-h 2>&1 | Bat --language=help --style=plain'alias -g -- --help='--help 2>&1 | الخفافيش --اللغة=مساعدة --نمط=عادي'
بهذه الطريقة، يمكنك الاستمرار في استخدام cp --help
، لكن ستحصل على صفحات مساعدة ملونة.
انتبه إلى أنه في بعض الحالات، قد لا يكون -h
اختصارًا لـ --help
(على سبيل المثال مع ls
).
يرجى الإبلاغ عن أية مشكلات تتعلق بصيغة المساعدة في هذا المستودع.
apt
)... وغيرها من توزيعات Linux المستندة إلى Debian.
bat
متاح على Ubuntu منذ 20.04 ("Focal") وعلى Debian منذ أغسطس 2021 (Debian 11 - "Bullseye").
إذا كان تثبيت Ubuntu/Debian لديك جديدًا بدرجة كافية، فيمكنك ببساطة تشغيل:
سودو ملائمة تثبيت الخفافيش
هام : إذا قمت بتثبيت bat
بهذه الطريقة، يرجى ملاحظة أنه قد يتم تثبيت الملف القابل للتنفيذ batcat
بدلاً من bat
(بسبب تعارض الاسم مع حزمة أخرى). يمكنك إعداد رابط رمزي أو اسم مستعار bat -> batcat
لمنع أي مشكلات قد تنشأ بسبب هذا ولكي تكون متسقًا مع التوزيعات الأخرى:
mkdir -p ~/.local/bin ln -s /usr/bin/batcat ~/.local/bin/bat
.deb
)... وغيرها من توزيعات Linux المستندة إلى Debian.
إذا لم تتم ترقية الحزمة بعد إلى تثبيت Ubuntu/Debian الخاص بك، أو كنت تريد الإصدار الأحدث من bat
، فقم بتنزيل أحدث حزمة .deb
من صفحة الإصدار وقم بتثبيتها عبر:
Sudo dpkg -ibat_0.18.3_amd64.deb # تعديل رقم الإصدار والهندسة المعمارية
يمكنك تثبيت حزمة bat
من المصادر الرسمية، بشرط تمكين المستودع المناسب:
apk إضافة الخفافيش
يمكنك تثبيت حزمة bat
من المصادر الرسمية:
بكمن -S الخفافيش
يمكنك تثبيت حزمة bat
من مستودع Fedora Modular الرسمي.
dnf تثبيت الخفافيش
يمكنك تثبيت حزمة bat
من dev-kit.
تظهر تطبيقات sys/bat
يمكنك تثبيت حزمة bat
من المصادر الرسمية:
تظهر تطبيقات sys/bat
يمكنك تثبيت bat
عبر xbps-install:
تثبيت xbps -S بات
يمكنك تثبيت bat
عبر pkg:
pkg تثبيت الخفافيش
يمكنك تثبيت حزمة bat
مترجمة مسبقًا باستخدام pkg:
pkg تثبيت الخفافيش
أو أنشئه بنفسك من منافذ FreeBSD:
مؤتمر نزع السلاح /usr/ports/textproc/bat قم بالتثبيت
يمكنك تثبيت حزمة bat
باستخدام pkg_add(1)
:
pkg_add الخفافيش
يمكنك تثبيت bat
باستخدام مدير الحزم nix:
لا شىء-env -i الخفافيش
يمكنك تثبيت bat
باستخدام Flox
فلوكس تثبيت الخفافيش
يمكنك تثبيت bat
باستخدام zypper:
زيبر تثبيت الخفافيش
لا تتوفر حاليا أي حزمة مبكرة موصى بها. قد تكون الحزم الموجودة متاحة، ولكنها غير مدعومة رسميًا وقد تحتوي على مشكلات.
يمكنك تثبيت bat
باستخدام Homebrew:
الشراب تثبيت الخفافيش
أو قم بتثبيت bat
باستخدام MacPorts:
منفذ تثبيت الخفافيش
هناك بعض الخيارات لتثبيت bat
على نظام التشغيل Windows. بمجرد تثبيت bat
، قم بإلقاء نظرة على قسم "استخدام bat
على نظام التشغيل Windows".
سوف تحتاج إلى تثبيت حزمة Visual C++ القابلة لإعادة التوزيع.
يمكنك تثبيت bat
عبر WinGet:
تثبيت Winget Sharkdp.bat
يمكنك تثبيت bat
عبر Chocolatey:
شوكو تثبيت الخفافيش
يمكنك تثبيت bat
عبر المجرفة:
مغرفة تثبيت الخفافيش
يمكنك تنزيل الثنائيات المعدة مسبقًا من صفحة الإصدار،
سوف تحتاج إلى تثبيت حزمة Visual C++ القابلة لإعادة التوزيع.
قم بمراجعة صفحة الإصدار للتعرف على الإصدارات المعدة مسبقًا من bat
للعديد من البنيات المختلفة. تتوفر أيضًا الثنائيات المرتبطة بشكل ثابت: ابحث عن الأرشيفات التي تحتوي على musl
في اسم الملف.
إذا كنت تريد إنشاء bat
من المصدر، فأنت بحاجة إلى Rust 1.70.0 أو أعلى. يمكنك بعد ذلك استخدام cargo
لبناء كل شيء:
تثبيت البضائع-مضرب مغلق
لاحظ أنه لا يمكن تثبيت ملفات إضافية مثل صفحة الدليل أو ملفات إكمال الصدفة بهذه الطريقة. سيتم إنشاؤها بواسطة cargo
ويجب أن تكون متاحة في المجلد المستهدف للبضائع (تحت build
).
استخدم bat --list-themes
للحصول على قائمة بجميع السمات المتاحة لتسليط الضوء على بناء الجملة. لتحديد سمة TwoDark
، قم باستدعاء bat
باستخدام خيار --theme=TwoDark
أو قم بتعيين متغير البيئة BAT_THEME
على TwoDark
. استخدم export BAT_THEME="TwoDark"
في ملف بدء تشغيل Shell الخاص بك لجعل التغيير دائمًا. وبدلاً من ذلك، استخدم ملف التكوين الخاص بـ bat
.
إذا كنت تريد معاينة السمات المختلفة في ملف مخصص، فيمكنك استخدام الأمر التالي (تحتاج إلى fzf
لهذا):
الخفافيش --list-themes | fzf --preview="bat --theme={} --color=always /path/to/file"
يقوم bat
تلقائيًا باختيار السمة المناسبة اعتمادًا على لون خلفية جهازك الطرفي. يمكنك استخدام خيارات --theme-light
/ --theme-light
أو متغيرات البيئة BAT_THEME_DARK
/ BAT_THEME_LIGHT
لتخصيص السمات المستخدمة. يعد هذا مفيدًا بشكل خاص إذا كنت تقوم بالتبديل بشكل متكرر بين الوضع الداكن والخفيف.
يمكنك أيضًا استخدام سمة مخصصة باتباع قسم "إضافة سمات جديدة" أدناه.
يحتوي bat
على ثلاثة سمات تستخدم دائمًا ألوان 8 بت، حتى عند توفر دعم الألوان الحقيقية:
ansi
تبدو لائقة على أي محطة. ويستخدم ألوان 3 بت: الأسود والأحمر والأخضر والأصفر والأزرق والأرجواني والسماوي والأبيض.
تم تصميم base16
لموضوعات Base16 الطرفية. ويستخدم ألوان 4 بت (ألوان 3 بت بالإضافة إلى المتغيرات الساطعة) وفقًا لإرشادات التصميم الأساسية 16.
تم تصميم base16-256
للقاعدة Base16-shell. فهو يستبدل بعض الألوان الزاهية بألوان 8 بت من 16 إلى 21. لا تستخدم هذا ببساطة لأن لديك محطة ذات 256 لونًا ولكنك لا تستخدم Base16-shell.
على الرغم من أن هذه السمات أكثر تقييدًا، إلا أنها تتمتع بثلاث مزايا مقارنة بموضوعات الألوان الحقيقية. هم:
استمتع بأقصى قدر من التوافق. لا تدعم بعض الأدوات المساعدة الطرفية أكثر من 3 بت من الألوان.
التكيف مع تغييرات موضوع المحطة. حتى بالنسبة للمخرجات المطبوعة بالفعل.
يتناغم بصريًا بشكل أفضل مع البرامج الطرفية الأخرى.
يمكنك استخدام خيار --style
للتحكم في مظهر مخرجات bat
. يمكنك استخدام --style=numbers,changes
، على سبيل المثال، لإظهار تغييرات Git وأرقام الأسطر فقط ولكن بدون شبكة أو رأس ملف. قم بتعيين متغير البيئة BAT_STYLE
لجعل هذه التغييرات دائمة أو استخدم ملف تكوين bat
.
نصيحة
إذا حددت نمطًا افتراضيًا في ملف تكوين bat
، فيمكنك تغيير المكونات التي يتم عرضها أثناء تشغيل bat
مرة واحدة باستخدام وسيطة سطر الأوامر --style
. من خلال بادئة المكون بـ +
أو -
، يمكن إضافته أو إزالته من النمط الحالي.
على سبيل المثال، إذا كان التكوين الخاص بك يحتوي على --style=full,-snip
، فيمكنك تشغيل الخفافيش باستخدام --style=-grid,+snip
لإزالة الشبكة وإعادة إضافة مكون snip
. أو، إذا كنت تريد تجاوز الأنماط بالكامل، فاستخدم --style=numbers
لإظهار أرقام الأسطر فقط.
إذا وجدت أن بناء جملة معين غير متوفر داخل bat
، فيمكنك اتباع هذه التعليمات لإضافة صيغ جديدة بسهولة إلى تثبيت bat
الحالي.
يستخدم bat
مكتبة syntect
الممتازة لتسليط الضوء على بناء الجملة. يمكن syntect
قراءة أي ملف وموضوع Sublime Text .sublime-syntax
.
من الموارد الجيدة للعثور على حزم Sublime Syntax هو التحكم في الحزم. بمجرد العثور على بناء الجملة:
قم بإنشاء مجلد يحتوي على ملفات تعريف بناء الجملة:
mkdir -p "$(bat --config-dir)/syntaxes"cd "$(bat --config-dir)/syntaxes"# ضع ملفات تعريف اللغة '.sublime-syntax' الجديدة# في هذا المجلد (أو أدلةه الفرعية) )، على سبيل المثال: git clone https://github.com/tellnobody1/sublime-purescript-syntax
استخدم الآن الأمر التالي لتحليل هذه الملفات إلى ذاكرة تخزين مؤقت ثنائية:
ذاكرة التخزين المؤقت للخفافيش --build
أخيرًا، استخدم bat --list-languages
للتحقق من توفر اللغات الجديدة.
إذا أردت العودة إلى الإعدادات الافتراضية، فاتصل بـ:
ذاكرة التخزين المؤقت للخفافيش - مسح
إذا كنت تعتقد أنه يجب تضمين بناء جملة معين في bat
بشكل افتراضي، فيرجى التفكير في فتح تذكرة "طلب بناء الجملة" بعد قراءة السياسات والتعليمات هنا: افتح طلب بناء الجملة.
يعمل هذا بشكل مشابه جدًا لكيفية إضافة تعريفات بناء الجملة الجديدة.
أولاً، قم بإنشاء مجلد يحتوي على سمات تسليط الضوء على بناء الجملة الجديد:
mkdir -p "$(bat --config-dir)/themes"cd "$(bat --config-dir)/themes"# قم بتنزيل سمة بتنسيق '.tmTheme'، على سبيل المثال:git clone https:// github.com/greggb/sublime-snazzy# قم بتحديث ذاكرة التخزين المؤقت الثنائية لذاكرة التخزين المؤقت --build
أخيرًا، استخدم bat --list-themes
للتحقق من توفر السمات الجديدة.
يمكنك إضافة أنماط اسم ملف جديدة (أو تغيير موجودة) باستخدام خيار سطر الأوامر --map-syntax
. يأخذ الخيار وسيطة pattern:syntax
حيث يكون pattern
عبارة عن نمط كروي مطابق لاسم الملف ومسار الملف المطلق. جزء syntax
هو الاسم الكامل للغة المدعومة (استخدم bat --list-languages
للحصول على نظرة عامة).
ملحوظة: ربما تريد استخدام هذا الخيار كإدخال في ملف تكوين bat
للاستمرارية بدلاً من تمريره على سطر الأوامر لمرة واحدة. بشكل عام، يمكنك فقط استخدام -l
إذا كنت تريد تحديد لغة للملف يدويًا.
مثال: لاستخدام تمييز بناء الجملة "INI" لجميع الملفات ذات ملحق الملف .conf
، استخدم
--map-syntax='*.conf:INI'
مثال: لفتح جميع الملفات المسماة .ignore
(المطابقة التامة) مع بناء جملة "Git Ignore"، استخدم:
--map-syntax='.ignore:Git Ignore'
مثال: لفتح جميع ملفات .conf
في المجلدات الفرعية لـ /etc/apache2
باستخدام بناء جملة "Apache Conf"، استخدم (هذا التعيين مضمن بالفعل):
--map-syntax='/etc/Apache2/**/*.conf:Apache Conf'
يستخدم bat
جهاز النداء المحدد في متغير بيئة PAGER
. إذا لم يتم تعيين هذا المتغير، فسيتم استخدام less
بشكل افتراضي. إذا كنت تريد استخدام جهاز استدعاء مختلف، فيمكنك إما تعديل متغير PAGER
أو تعيين متغير البيئة BAT_PAGER
لتجاوز ما تم تحديده في PAGER
.
ملحوظة
إذا كان PAGER
more
أو most
، فسيستخدم bat
بصمت less
بدلاً من ذلك لضمان دعم الألوان.
إذا كنت تريد تمرير وسيطات سطر الأوامر إلى جهاز النداء، فيمكنك أيضًا تعيينها عبر متغيرات PAGER
/ BAT_PAGER
:
تصدير BAT_PAGER = "أقل -RF"
بدلاً من استخدام متغيرات البيئة، يمكنك أيضًا استخدام ملف تكوين bat
لتكوين جهاز النداء (خيار --pager
).
less
كجهاز النداء عند استخدام less
كجهاز استدعاء، سيقوم bat
تلقائيًا بتمرير خيارات إضافية إلى less
لتحسين التجربة. على وجه التحديد، -R
/ --RAW-CONTROL-CHARS
، -F
/ --quit-if-one-screen
، وفي ظل ظروف معينة، -X
/ --no-init
و/أو -S
/ --chop-long-lines
.
مهم
لن تتم إضافة هذه الخيارات إذا:
لم يتم تسمية جهاز النداء less
.
تحتوي وسيطة --pager
على أية وسائط لسطر الأوامر (على سبيل المثال --pager="less -R"
).
يحتوي متغير البيئة BAT_PAGER
على أي وسيطات لسطر الأوامر (على سبيل المثال، export BAT_PAGER="less -R"
)
لن يتم إضافة خيار --quit-if-one-screen
عندما:
يتم استخدام الوسيطة --paging=always
.
تم ضبط بيئة BAT_PAGING
على always
.
الخيار -R
مطلوب لتفسير ألوان ANSI بشكل صحيح.
less
الخيار -F
إلى الخروج فورًا إذا كان حجم الإخراج أصغر من الحجم الرأسي للمحطة. يعد هذا مناسبًا للملفات الصغيرة لأنه لا يتعين عليك الضغط على q
لإنهاء جهاز النداء.
يعد الخيار -X
ضروريًا لإصلاح خطأ في ميزة --quit-if-one-screen
في الإصدارات less
من الإصدار 530. ولسوء الحظ، فإنه يكسر أيضًا دعم عجلة الماوس في إصدارات less
. إذا كنت تريد تمكين التمرير بعجلة الماوس على الإصدارات الأقدم من الإصدار less
ولا تمانع في فقدان ميزة الخروج إذا كانت هناك شاشة واحدة، فيمكنك ضبط جهاز النداء (عبر --pager
أو BAT_PAGER
) على less -R
. لأقل less
530 أو أحدث، يجب أن تعمل خارج الصندوق.
تتم إضافة خيار -S
عند استخدام خيار -S
/ --chop-long-lines
الخاص bat
. وهذا يوضح less
لاقتطاع أي خطوط أكبر من عرض المحطة الطرفية.
يقوم bat
بتوسيع علامات التبويب إلى 4 مسافات بمفرده، دون الاعتماد على جهاز النداء. لتغيير ذلك، ما عليك سوى إضافة وسيطة --tabs
مع عدد المسافات التي تريد عرضها.
ملاحظة : لن يتم أخذ تحديد علامات الجدولة لجهاز النداء (عبر وسيطة --pager
بواسطة bat
أو عبر متغير البيئة LESS
لـ less
) في الاعتبار لأن جهاز النداء سيحصل بالفعل على مسافات موسعة بدلاً من علامات التبويب. تتم إضافة هذا السلوك لتجنب مشكلات المسافة البادئة التي يسببها الشريط الجانبي. سيؤدي استدعاء bat
بـ --tabs=0
إلى تجاوزه والسماح لجهاز النداء باستهلاك علامات التبويب.
إذا كنت تستخدم ميزة الوضع المظلم في نظام التشغيل macOS، فقد ترغب في تكوين bat
لاستخدام سمة مختلفة بناءً على سمة نظام التشغيل. يستخدم المقتطف التالي السمة default
عندما تكون في الوضع المظلم وموضوع GitHub
عندما تكون في الوضع الفاتح .
الاسم المستعار cat = "bat --theme=$(القراءة الافتراضية -globalDomain AppleInterfaceStyle &> /dev/null && echo default || echo GitHub)"
يمكن أيضًا تخصيص bat
باستخدام ملف التكوين. يعتمد موقع الملف على نظام التشغيل لديك. للحصول على المسار الافتراضي لنظامك، اتصل
بات --ملف التكوين
وبدلاً من ذلك، يمكنك استخدام متغيرات البيئة BAT_CONFIG_PATH
أو BAT_CONFIG_DIR
لتوجيه bat
إلى موقع غير افتراضي لملف التكوين أو دليل التكوين على التوالي:
تصدير BAT_CONFIG_PATH = "/path/to/bat/bat.conf" تصدير BAT_CONFIG_DIR = "/path/to/bat"
يمكن إنشاء ملف التكوين الافتراضي باستخدام خيار --generate-config-file
.
بات --إنشاء ملف التكوين
يوجد الآن أيضًا ملف تكوين على مستوى النظام، والذي يقع ضمن /etc/bat/config
على Linux وMac OS و C:ProgramDatabatconfig
على نظام التشغيل windows. إذا كان ملف التكوين على مستوى النظام موجودًا، فسيتم ببساطة إلحاق محتوى تكوين المستخدم به.
ملف التكوين عبارة عن قائمة بسيطة لوسائط سطر الأوامر. استخدم bat --help
لرؤية القائمة الكاملة للخيارات والقيم الممكنة. بالإضافة إلى ذلك، يمكنك إضافة تعليقات عن طريق إضافة سطر بالحرف #
.
مثال لملف التكوين:
# اضبط السمة على "TwoDark"--theme="TwoDark"# إظهار أرقام الأسطر وتعديلات Git ورأس الملف (ولكن بدون شبكة)--style="numbers,changes,header"# استخدم النص المائل على الجهاز (ليس مدعوم على جميع المحطات الطرفية)--italic-text=always# استخدم بناء جملة C++ لملفات Arduino .ino--map-syntax "*.ino:C++"
bat
على نظام التشغيل Windows يعمل bat
في الغالب خارج الصندوق على نظام التشغيل Windows، ولكن قد تحتاج بعض الميزات إلى تكوين إضافي.
سوف تحتاج إلى تثبيت حزمة Visual C++ القابلة لإعادة التوزيع.
يتضمن Windows فقط جهاز بيجر محدود للغاية في شكل more
من ملفات . يمكنك تنزيل برنامج Windows الثنائي بتكلفة less
من صفحته الرئيسية أو من خلال Chocolatey. لاستخدامه، ضع الملف الثنائي في دليل في PATH
الخاص بك أو قم بتعريف متغير البيئة. يتم تثبيت حزمة Chocolatey less
تلقائيًا.
يدعم Windows 10 الألوان في كل من conhost.exe
(موجه الأوامر) وPowerShell منذ الإصدار 1511، وكذلك في الإصدارات الأحدث من bash. في الإصدارات السابقة من Windows، يمكنك استخدام Cmder، والذي يتضمن ConEmu.
ملاحظة: الإصدارات القديمة من less
لا تفسر الألوان بشكل صحيح على نظام التشغيل Windows. لإصلاح ذلك، يمكنك إضافة أدوات Unix الاختيارية إلى PATH الخاص بك عند تثبيت Git. إذا لم يكن لديك أي أجهزة استدعاء أخرى مثبتة، فيمكنك تعطيل الترحيل بالكامل عن طريق تمرير --paging=never
أو عن طريق تعيين BAT_PAGER
على سلسلة فارغة.
bat
على نظام التشغيل Windows لا يدعم أصلاً مسارات نمط Unix الخاصة بـ Cygwin ( /cygdrive/*
). عند تمرير مسار cygwin مطلق كوسيطة، سيواجه bat
الخطأ التالي: The system cannot find the path specified. (os error 3)
يمكن حل هذه المشكلة عن طريق إنشاء غلاف أو إضافة الوظيفة التالية إلى ملف .bash_profile
الخاص بك:
Bat() {local Indexlocal args=("$@")للمؤشر في $(seq 0 ${#args[@]}) ; docase "${args[index]}" in-*) continue;;*) [ -e "${args[index]}" ] && args[index]="$(cygpath --windows "${args[ الفهرس]}")";;esacdonecommand Bat "${args[@]}"}
إذا كان ملف الإدخال يحتوي على رموز ألوان أو تسلسلات هروب ANSI أخرى أو أحرف تحكم، فسوف يواجه bat
مشكلات في تنفيذ تمييز بناء الجملة والتفاف النص، وبالتالي يمكن أن يصبح الإخراج مشوهًا.
إذا كان إصدار bat
الخاص بك يدعم الخيار --strip-ansi=auto
، فيمكن استخدامه لإزالة مثل هذه التسلسلات قبل تمييز بناء الجملة. بدلًا من ذلك، يمكنك تعطيل تمييز والتفاف بناء الجملة عن طريق تمرير خيارات --color=never --wrap=never
إلى bat
.
ملحوظة
يتجنب الخيار auto
لـ --strip-ansi
إزالة تسلسلات الهروب عندما يكون بناء الجملة نصًا عاديًا.
يتعامل bat
مع المحطات الطرفية بدعم الألوان الحقيقية أو بدونها . ومع ذلك، لم يتم تحسين الألوان في معظم سمات تمييز بناء الجملة للألوان ذات 8 بت. لذلك يوصى بشدة باستخدام وحدة طرفية تدعم اللون الحقيقي 24 بت ( terminator
، konsole
، iTerm2
، ...)، أو استخدام أحد السمات الأساسية ذات 8 بت المصممة لمجموعة محدودة من الألوان. راجع هذه المقالة للحصول على مزيد من التفاصيل وقائمة كاملة من المحطات الطرفية التي تدعم اللون الحقيقي.
تأكد من أن محطة truecolor الخاصة بك تقوم بتعيين متغير COLORTERM
إما على truecolor
أو 24bit
. بخلاف ذلك، لن يتمكن bat
من تحديد ما إذا كان تسلسل الهروب 24 بت مدعومًا أم لا (ويعود إلى ألوان 8 بت).
الرجاء تجربة سمة مختلفة (راجع bat --list-themes
للحصول على القائمة). توفر سمات OneHalfDark
و OneHalfLight
ألوانًا للشبكة والخطوط أكثر سطوعًا.
يدعم bat
أصلاً UTF-8 بالإضافة إلى UTF-16. بالنسبة لكل ترميز ملف آخر، قد تحتاج إلى التحويل إلى UTF-8 أولاً لأنه لا يمكن عادةً اكتشاف الترميزات تلقائيًا. يمكنك iconv
للقيام بذلك. مثال: إذا كان لديك ملف PHP بترميز Latin-1 (ISO-8859-1)، فيمكنك الاتصال بـ:
iconv -f ISO-8859-1 -t UTF-8 my-file.php | الخفافيش
ملاحظة: قد يتعين عليك استخدام خيار -l
/ --language
إذا لم يكن بالإمكان اكتشاف بناء الجملة تلقائيًا بواسطة bat
.
# استنساخ متكرر لاسترداد جميع الوحدات الفرعية استنساخ git --recursive https://github.com/sharkdp/bat# Build (إصدار تصحيح)cdbat بناء البضائع - صناديق # تشغيل اختبارات الوحدة واختبارات التكامل اختبار الشحن # تثبيت (إصدار الإصدار) تثبيت البضائع - المسار . --locked# أنشئ ملف ثنائي Bat باستخدام تركيبات الجملة المعدلة وأصول themebash/create.sh تثبيت البضائع - المسار . --مقفل --القوة
إذا كنت ترغب في إنشاء تطبيق يستخدم ميزات الطباعة الرائعة التي يوفرها bat
كمكتبة، فراجع وثائق واجهة برمجة التطبيقات (API). لاحظ أنه يتعين عليك استخدام إما regex-onig
أو regex-fancy
كميزة عندما تعتمد على bat
كمكتبة.
قم بإلقاء نظرة على دليل CONTRIBUTING.md
.
com.sharkdp
الأخلاق ص
كيث هول
إنسيليك
يرجى الاتصال بـ David Peter عبر البريد الإلكتروني إذا كنت تريد الإبلاغ عن ثغرة أمنية في bat
.
يحاول bat
تحقيق الأهداف التالية:
توفير تسليط الضوء على بناء الجملة الجميلة والمتقدمة
التكامل مع Git لإظهار تعديلات الملف
كن بديلاً مباشرًا cat
(POSIX).
تقديم واجهة سطر أوامر سهلة الاستخدام
هناك الكثير من البدائل، إذا كنت تبحث عن برامج مماثلة. انظر هذه الوثيقة للمقارنة.
حقوق الطبع والنشر (ج) 2018-2023 لمطوري الخفافيش.
bat
متاحًا بموجب شروط ترخيص MIT أو ترخيص Apache 2.0، حسب اختيارك.
راجع ملفات LICENSE-APACHE وLICENSE-MIT للحصول على تفاصيل الترخيص.