Vim හි සිද්ධි සංවේදී නොවන සෙවීමක් කරන්නේ කෙසේද


1664

මම ලොකු අකුරක් සෙවීමට කැමතියි, උදාහරණයක් ලෙස ගොනුවක COPYRIGHT. මම සෙවීමක් කිරීමට උත්සාහ කළෙමි:

/copyright/i    # Doesn't work

නමුත් එය ක්‍රියා නොකරයි. පර්ල්හිදී, මම iධජය රීජෙක්ස් බවට පත් කළහොත් එය රීජෙක්ස් සිද්ධි-සංවේදී නොවන රීජෙක්ස් බවට පත් කරන බව මම දනිමි . සිද්ධි-සංවේදී නොවන රීජෙක්ස් එකක් දැක්වීමට විම්ට තමන්ගේම ක්‍රමයක් ඇති බව පෙනේ.

Answers:


2123

\cරටාවේ ඕනෑම තැනක සිට ඔබට ගැලවීමේ අනුක්‍රමය භාවිතා කළ හැකිය . උදාහරණයක් වශයෙන්:

/\ccopyrightහෝ /copyright\cහෝ/copyri\cght

ප්‍රතිලෝම (සිද්ධි සංවේදී ගැලපීම) කිරීමට, \Cඒ වෙනුවට (ප්‍රාග්ධන සී) භාවිතා කරන්න.


521
එසේම, \cරටාවේ ඕනෑම තැනක පෙනී සිටිය හැකිය, එබැවින් ඔබ රටාවක් ටයිප් කර ඔබට සිද්ධි-සංවේදී සෙවීමක් අවශ්‍ය යැයි තීරණය කරන්නේ නම් \c, අවසානයේ දී එක් කරන්න .
ආලෝක් සිංගල්

273
set ignorecaseමගේ vimrc හි සිද්ධි-සංවේදී නොවන සෙවීම් සඳහා එක් කිරීමට මම කැමතියි , සහ \C@AlokSinghal සඳහන් කළ ආකාරයටම සිද්ධි සංවේදී සෙවීමක් කිරීමට මට භාවිතා කළ හැකිය .
නික් මැකර්ඩි

167
ද තිබෙන set smartcaseඔබ යම් ප්රාග්ධන ලිපි සඳහා භාවිතා කරනවා නම් ස්වයංක්රීයව තටු සංවේදී සෝදිසි මාරු වනු ඇත.
සාස්

87
සාස්ගේ අදහස් දැක්වීමට එක් කිරීමට අවශ්‍යය. set smartcaseඅදාළ set ignorecaseවන්නේ දැනටමත් සක්‍රිය විට පමණි . මම මේ ගැන ටික වේලාවක් කඩුල්ලේ රැඳී සිටියෙමි. Vim Tips බලන්න .
ටැන් වැන්ග්

12
od කෝඩර්මී, එය ප්‍රාග්ධනීකරණය, \cඑදිරිව\C
ආරොන් මැක්ඩයිඩ්

687

සඳහා වන යෝජනා \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'

84
ගැටළුව ignorecaseවන්නේ එය ආදේශකයන්ට මෙන්ම සෙවීම් වලට ද බලපාන බැවිනි. පෙරනිමියෙන් (බුද්ධිමත්) සිද්ධි-සංවේදී නොවන සෙවුම් නමුත් සිද්ධි සංවේදී ආදේශක තිබීම අර්ථවත් බව මට පෙනී ගියේය. නමුත් මා දන්නා පරිදි එය කිරීමට ක්‍රමයක් නොමැත.
හියුස්

151
smartcaseවැඩ කිරීම සඳහා එය සඳහන් කිරීම වටී , ඔබටත් අවශ්‍යයි set ignorecase. නියමයි, ස්තූතියි!
ස්කිල්ඩ්රික්

12
මෙවැනි ආදේශක සඳහා ඔබේ සෙවුම් ප්‍රකාශනයේ \ C භාවිතා කළ හැකි යැයි මම විශ්වාස කරමි : :%s/lowercasesearch\C/replaceString/g. මෙය ඔබ කැමති පෙරනිමි ක්‍රියාකාරිත්වය නිර්මාණය නොකරයි, නමුත් සෙවීමේදී ස්මාර්ට් කේස් වලින් ප්‍රතිලාභ ලබන අතරම ප්‍රතිස්ථාපනය සඳහා සිද්ධි සංවේදීතාව බල කිරීමට එය ඔබට ඉඩ දෙයි.
ඇන්තනි ඩිසන්ති

23
රටාව සිද්ධි සංවේදී වීමට බල කිරීම සඳහා ඔබට ආදේශකයක් මත Iධජය සැකසිය හැකිය . වගේ :%s/lowercasesearch/replaceString/gI.
රෝරි ඕ'කේන්

1
උපකාරක පිටුවෙන් සටහන (ඔබ මා වැනි "*" ඇබ්බැහි නම් ප්‍රයෝජනවත් වේ):After "*" and "#" you can make 'smartcase' used by doing a "/" command, recalling the search pattern from history and hitting <Enter>.
mcella

293

icසෙවීමට පෙර ඔබට විකල්පය Vim හි සැකසිය හැකිය :

:set ic

සිද්ධි සංවේදී සෙවීම් වෙත ආපසු යාමට භාවිතා කරන්න:

:set noic

ic සඳහා කෙටිමං වේ ignorecase


Vim වෙනුවට Vi භාවිතා කිරීමට ඔබ අවාසනාවන්ත නම් ඔබේ එකම විකල්පය. \cvi හි ක්‍රියා නොකරයි.
bluppfisk


50

සිද්ධි සංවේදී හා සංවේදී නොවන සෙවීම් අතර මාරුවීම සඳහා මම මගේ .vimrc හි මෙම සිතියම්කරණය භාවිතා කරමි

nmap <F9> :set ignorecase! ignorecase?


15
ඔව්, නමුත් ignorecase?ධජයේ වත්මන් තත්වය ඔබට පෙන්වයි. (විධාන රේඛාවේ)
බොරිස් බ්‍රොඩ්ස්කි

1
ඔබට ස්තුතියි! මට නම්, මෙය පිටුවේ ඇති වඩාත්ම ප්‍රයෝජනවත් පිළිතුරයි: එම නිශ්චිත මොහොතේ ඔබ සොයන දේ මත පදනම්ව ක්‍රම දෙක අතර ඉක්මණින් ටොගල් කිරීමේ ක්‍රමයක්.
බෙන් හිලියර්

33

ඔබේ vimrcවිධාන වලදී ඔබට භාවිතා කළ හැකිය :

  • set ignorecase - ඔබගේ සියලු සෙවීම් සිද්ධි සංවේදී නොවේ
  • set smartcase - ඔබේ සෙවුමේ ලොකු අකුරක් තිබේ නම් එය සංවේදී වේ

ඔබට සපයන ignorecaseදේ භාවිතා කිරීමට අවශ්‍ය නම් ඔබ සැකසිය යුතුය smartcase.

මම මෑතකදී Vim සෙවුම් විධානයන් පිළිබඳ ලිපියක් ලිව්වෙමි (දෙකම විධාන වලින් සාදා ඇති අතර කාර්යක්ෂමව සෙවීමට හොඳම ප්ලගීන).


1
set smartcaseමම ලොකු අකුරු භාවිතා නොකරන්නේ නම් සිද්ධි සංවේදී සෙවීම් සිදු නොකරන බව පෙනේ ... එය සාමාන්‍ය දෙයක්ද?
කැනෙටා

1
හරි, එය කියවීමට නොසලකා හැරීම සහ ස්මාර්ට්කේස් යන දෙකම සැකසිය යුතු බව පහත කියවන්න. ඒ ගැන කණගාටුයි!
කැනෙටා

25

අනෙක් අය යෝජනා කළ පරිදි:

:set ic

නමුත් සිසිල් දේ නම් ඔබට එවැනි මාතයන් ටොගල් කළ හැකිය:

:set ic!

18

මෙම විධානය ඔබගේ vimrc ගොනුවට දමන්න

set ic 

සෑම විටම සිද්ධි සංවේදී සෙවීමක් කරන්න


4
එයට හේතුව මම නොදනිමි, නමුත් මෙය වළක්වා ගැනීම සඳහා පෙරනිමියෙන් මගේ විචලනය සිද්ධි-සංවේදී නොවන ලෙස සකසා ඇත. භාවිතය set noic.
user1510539

18

හොඳ පැරණි vim[grep]විධානය ..

:vimgrep /example\c/ &
  • \c සංවේදී නොවන අවස්ථාවන් සඳහා
  • \C සිද්ධි සංවේදී සඳහා
  • % වත්මන් බෆරයේ සෙවීමයි

රූප විස්තරය මෙහි ඇතුළත් කරන්න


Cannot open file "&"
විටාලි Zdanevich

මම හිතන්නේ ඔහු ඒ %වෙනුවට අදහස් %කළා.
oarfish


10

Uhuyz සඳහන් කරන පරිදි සමහර විට අපේක්ෂිත හැසිරීම සිද්ධි සංවේදී නොවන සෙවීම් භාවිතා කරන නමුත් සිද්ධි සංවේදී ආදේශක වේ. ඒ සඳහා මගේ විසඳුම:

nnoremap / /\c
nnoremap ? ?\c

සෑම විටම ඔබ පහර දුන් විට /හෝ ?එය \cසිද්ධි සංවේදී නොවන සෙවීමක් සඳහා එකතු කරනු ඇත .


1
නරක යෝජනාවක් නොවේ, නමුත් එය smartcaseවිකල්පය භාවිතා කිරීමෙන් ඔබව වළක්වයිද?
Trebor Rude

පෙනෙන ආකාරයට එය ඉක්මවා යයිsmartcase
මැතිව් වූ

4

Vim සතුව මාතයන් 2 ක් ඇත

1.edit mode

  1. සාමාන්‍ය මාදිලිය (Esc)

සෙවීම සාමාන්‍ය මාදිලිය සඳහා ක්‍රියා කරයි

සිද්ධි සංවේදී සඳහා / \ c

/ search c සෙවීම


දෘශ්‍ය මාදිලිය ගැන කුමක් කිව හැකිද?
user202729

3

ඔබට ignorecaseපෙරනිමියෙන් සැකසිය හැකිය , මෙය කවචයෙන් ධාවනය කරන්න

echo "set ic" >> ~/.vimrc
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.