好多檔案的內容要取代怎麼辦,教你一個批量取代檔案文字,以及讓取代的內容也能換行的密技

pc雜談-3 好多檔案的內容要取代怎麼辦,教你一個批量取代檔案文字,以及讓取代的內容也能換行的密技

各位好,最近NVDA更新到了2022.1版本,好多地方都傳出了更新後某些插件無法使用的災情,
但可能還有很多人不知道的是,插件之所以不能用,不一定是插件已經完全無法在新版NVDA中執行,而是被插件目錄中的manifest.ini檔案影響了,
每個NVDA插件都會有一個manifest.ini檔案,紀錄插件相容的最低版本和最高版本,
當你的NVDA當前版本高於這個檔案中紀錄的最高版本時,就會導致插件無法使用,解決方法也很簡單,就是自己手動去修改檔案中的最高版本號,
但如果你有十多個以上的插件,你就需要反覆的修改十幾個;甚至更多的檔案,才能讓所有的插件正常的執行,
因此這篇就要告訴你,用最簡單的方式,批量取代大量檔案中相同文字的技巧,以及在取代的內容中增加換行或刪除換行的密技,
此篇所提到的技巧,也可以用於其他需要大量取代檔案內容的場景,不是只能修改NVDA插件的檔案喔!

下載

這篇你需要下載一個名為notepad++的軟體,這是一個比記事本還強大的文字編輯器,
因為最新版的notepad++會跟NVDA打架,所以下面的下載點是舊版本,但功能也夠用了,如果軟體問你是否更新notepad++,記得選否→
點我下載notepad++
下載好後,基本一路下一步直到安裝完成即可使用。

批量取代檔案中的內容

接下來以修改NVDA插件中的manifest.ini檔案為例→

  1. 首先,你要找到放NVDA插件的地方,先按
    win鍵
    tab找到
    所有程式
    往下找
    NVDA 資料夾,已摺疊
    按enter,之後往下找到這個再按enter
    開啟 NVDA 使用者組態目錄
  2. 此時會打開一個資料夾視窗,找到列表中最上面中的
    addons
  3. 為了避免後續操作失誤,建議你可以把這個資料夾做個備份,看是要複製到其他地方,或是直接在
    addons
    資料夾上按快顯鍵,選
    加到 "addons.rar"(T)
    直接壓縮成一個壓縮檔來備份,等下改錯了只要關閉nvda,解壓並覆蓋就能還原
  4. 繼續剛剛的步驟,在addons上,按enter進去
  5. 之後你要在這裡新增一個記事本檔案,例如我會先按ctrl+alt+空格切成未選取,之後按快顯鍵找新增→文字文件,按enter
  6. 在剛新增好的文字檔上按快顯鍵,往下找
    Edit with Notepad++
    enter打開

  7. ctrl+shift+f
    會打開(在多個檔案中尋找)的對話框
  8. 按照下面的內容輸入要搜尋和要取代的文字,以及相關選項的設定→
    • 尋找內容 下拉式方塊 編輯區
      lastTestedNVDAVersion =
    • 取代為 下拉式方塊 編輯區

lastTestedNVDAVersion =

  • 過濾 下拉式方塊 編輯區
    .ini
  • 使用目前文件資料夾位置核取方塊勾選
  • 包含子資料夾核取方塊勾選
  • 僅符合整個單字(W)核取方塊勾選Alt+w
  • 區分大小寫(C)核取方塊沒勾選Alt+c
  • 搜尋模式 下拉式方塊 一般選擇鈕勾選
  1. 之後tab找
    全部尋找按鈕
    按enter,搜尋後會有一個列表,顯示搜尋到多少符合條件的內容,看起來類似這樣的訊息→
    搜尋 "lastTestedNVDAVersion =" (找到 23 個結果在 23 的文件中。搜尋文件量: 184)
  2. 接下來再按一次
    ctrl+shift+f
    會打開(在多個檔案中尋找)的對話框
  3. tab找
    在多個檔案中取代按鈕
    按enter,會彈出一個詢問你是否取代的對話框,選確定enter
    之後檔案裡本來的
    lastTestedNVDAVersion =
    就會被取代成

lastTestedNVDAVersion =

  1. 之後按ctrl+shift+f再次打開(在多個檔案中尋找)對話框,
    notepad++會自動記住上次的設定,這次你要修改的只有三個地方,按照下面的說明書入並做一樣的設定→
    • 尋找內容 下拉式方塊 編輯區

lastTestedNVDAVersion =

  • 取代為 下拉式方塊 編輯區
    lastTestedNVDAVersion = 2099.1 \r\n# lastTestedNVDAVersion =
  • 搜尋模式 下拉式方塊 延伸(\n, \r, \t, \0, \x...)選擇鈕勾選
  1. tab找
    在多個檔案中取代按鈕
    按enter,會彈出一個詢問你是否取代的對話框,選確定enter
  2. 之後就取代完成了,回到剛剛放插件的視窗,隨便找一個插件資料夾進去,例如我找
    WorldVoice
    裡面的
    manifest.ini
    你就能看到類似這樣的兩行
    lastTestedNVDAVersion = 2099.1

lastTestedNVDAVersion = 2022.1

  1. ok! 這樣就修改成功了,你可以重啟NVDA,然後嘗試更新到2022.1版本囉!
    接下來我會補充前面沒有特別強調的一些重點,有興趣可以繼續看下去

補充

  • 前面的步驟中,我們先把manifest.ini裡面的
    lastTestedNVDAVersion =
    加上了#,之後再根據#符號定位到那一行,並加上了新的內容再換行,
    為了避免ini檔案中本來就有用到#,因此才搜尋了完整的# lastTestedNVDAVersion =進行第二次的取代操作
  • 前面用到的#符號,作用是讓有#開頭的整行文字不被執行,也就是說這行只是給你自己看的,程式會直接跳過那一行
  • 前面用到的\r\n是換行符號的寫法,每個系統的換行寫法不同,例如linux跟mac ox,有的只有\n有的只有\r,而windows一般是\r\n
  • 當你尋找或取代文字時,如果會寫到換行,搜尋模式就必須調成
    延伸(\n, \r, \t, \0, \x...)選擇鈕勾選
    否則你輸入的\r\n將會以純文字的形式來搜尋或取代