it-swarm.asia

كيف نفعل حالة البحث غير حساس في فيم

أود البحث عن حالة الأحرف الكبيرة Word ، على سبيل المثال حقوق النشر في ملف. لقد حاولت إجراء بحث مثل:

/copyright/i    # Doesn't work

لكنها لا تعمل. أعلم أنه في Perl ، إذا أعطيت العلامة i إلى regex ، فسوف يحول هذا السجل إلى regex غير متحسس لحالة الأحرف. يبدو أن Vim له طريقته الخاصة للإشارة إلى حالة غير حساسة لحالة الأحرف.

1483
Haiyuan Zhang

تحتاج إلى استخدام تسلسل الهروب \c. وبالتالي:

/\ccopyright

للقيام بالعكس (حالة حساس مطابقة) ، استخدم \C بدلاً من ذلك.

1873
Chinmay Kanchi

بالإضافة إلى اقتراحات \c و ignorecase ، أجد smartcase مفيدًا جدًا. إذا كنت تبحث عن شيء يحتوي على أحرف كبيرة ، فستقوم بعملية بحث حساسة لحالة الأحرف ؛ إذا بحثت عن شيء صغير بحت ، فستقوم بعملية بحث غير حساسة لحالة الأحرف. يمكنك استخدام \c و \C لتجاوز هذا:

:set ignorecase
:set smartcase
/copyright      " Case insensitive
/Copyright      " Case sensitive
/copyright\C    " Case sensitive
/Copyright\c    " Case insensitive

نرى:

:help /\c
:help /\C
:help 'smartcase'
619
DrAl

يمكنك ضبط الخيار ic في Vim قبل البحث:

:set ic

للعودة إلى عمليات البحث الحساسة لحالة الأحرف ، استخدم:

:set noic

ic اختصار لـ ignorecase

258
Nathan Fellman

يمكنك إصدار الأمر

:set ignorecase

وبعد ذلك ستكون عمليات البحث غير حساسة لحالة الأحرف.

51
Paolo Tedesco

للتبديل بين البحث الحساس لحالة الأحرف وأستخدمه ، استخدم هذا التعيين في ملفي .vimrc

nmap <F9> :set ignorecase! ignorecase?

43
vbd

كما اقترح آخرون:

:set ic

ولكن الأشياء الرائعة هي أنه يمكنك تبديل هذه الأوضاع باستخدام:

:set ic!
17
fane89

ضع هذا الأمر في ملف vimrc الخاص بك

set ic 

تفعل دائما حالة البحث غير حساسة

17
WALID BELRHALMIA

يمكنك استخدام هذه الأوامر في vimrc:

  • set ignorecase - ستكون جميع عمليات البحث غير حساسة لحالة الأحرف
  • set smartcase - سيكون بحثك حساسًا لحالة الأحرف إذا كان يحتوي على حرف كبير

تحتاج إلى ضبط ignorecase إذا كنت تريد استخدام ما smartcase يوفره.

لقد كتبت مؤخرًا مقالة حول أوامر البحث فيم (كلاهما مدمج في القيادة وأفضل الإضافات للبحث بفعالية).

14
Matthieu

أمر vim[grep] القديم الجيد ..

:vimgrep /example\c/ &
  • \c لحالة غير حساسة
  • \C لحالة الأحرف الحساسة
  • % هو البحث في المخزن المؤقت الحالي

enter image description here

13
Mick

أفضل استخدام \c في نهاية سلسلة البحث:

/copyright\c
9
Nick Tsai

كما ذكر @ huyz في بعض الأحيان ، فإن السلوك المرغوب فيه يستخدم عمليات البحث غير الحساسة لحالة الأحرف ولكن البدائل الحساسة لحالة الأحرف. حل لي لذلك:

nnoremap / /\c
nnoremap ? ?\c

مع ذلك دائمًا عندما تضغط على / أو ? ، ستضيف \c للبحث عن حالة غير متحسسة لحالة الأحرف.

7
pbogut

يمكنك تعيين ignorecase افتراضيًا ، قم بتشغيل هذا في Shell

echo "set ic" >> ~/.vimrc
2
Steely Wing

فيم لها 2 وسائط

1. تعديل الوضع

  1. الوضع العادي (Esc)

سوف يعمل البحث عن الوضع العادي

/\ c لحالة الأحرف الحساسة

/\ c بحث

2
Gowthaman