>>35
漠然と「全般」などと訊かれても答えられない。
それぞれのアドオンでの実装方法に応じて適切な修正を施す

簡単なのはそのアドオンのソースから以下のようなコードを探して右のように変更する方法
  loadURI → addTab や loadOneTab に置き換える
  openLinkIn → 第2引数(where)を "tab" や "tabshifted" として呼び出す
  PlacesUIUtils.openNodeWithEvent や SidebarUtils.handleTreeClick
  → 第2引数(aEvent).button = 1 として呼び出す(リンクをミドルクリックしたことになる)
など(あくまでも一例で他の関数が使われている場合もある)

文字通りアドオン「全般」に適用したいなら tabLock.uc.js がやっているように
使われる可能性のある関数を eval を使って直接書き換えるのがてっとり早い