※ 引述《Bellkna (Belldandy)》之銘言:
: 想請問大家怎麼用 vim 來做 hex 編輯
: 試用了 %!xxd
: 用 / ? 沒辦法跨行搜尋字串
: replace 當然也沒辦法用
: 想請教 有沒有好用一點的 hex 解決方案(vim)
: 目前需要 hex 編輯時 還是會開 hxd 來做
: 只是 hxd 沒有 script 功能
: 所以想改用 vim 來做(修改的東西固定的 想弄成 script 來做)
: 煩請指教 謝謝
最近剛好在弄這個
用/搜尋的時候,如果是要搜hex code,
比方說 0xab 可以直接用 /\%xab來找
但是這邊還有兩個問題
第一個是如果要把 0x31換成0x39 (數字1換成數字9)
打 %s/\%x31/\%x39/g 最後會發現數字1被換成 %x39
也就是搜尋可以用 \%x31找,但是replace的地方用一樣的輸入vim不認得
所以變成取代時得用 <C-v>來輸入hex code
第二個問題是 0x0a (換行符號)
不知道什麼原因在vim裡搜尋取代0x0a都會被當成0x00
不管是搜尋或是取代用<C-v>輸入都是
繞過去的解法目前只想到要搜或取代成0x0a時得改成搜\n
以上兩個問題不知道有沒有人有好解法?
不然要全自動來作取代可能還是有點困難.