Sublime Text 2では、ユーザーは現在の選択に限定された検索と置換を実行できますか?
それを実行する方法を見つけるために複数の検索を行った後、私はそれができなかったに違いないと思います。
ST2にはそのためのボタンがあります。
選択に改行が含まれる場合、「選択内」ボタンが自動的にアクティブになります-ST2
スマートアクティベーションは、残念ながらST3で失われました。ここでフォローアップできます http://www.sublimetext.com/forum/viewtopic.php?f=3&t=11679
ユーザーのキーバインドに追加する必要があるものは次のとおりです。
{ "keys": ["alt+y"], "command": "toggle_in_selection", "context":
[
{ "key": "setting.is_widget", "operator": "equal", "operand": true }
]
},
ええ、それはデフォルトのキーバインドセットではないのはおかしいです。
コマンド名「toggle_in_selection
"は記載されていませんでしたが、推測して幸運になりました。
追加する編集:
/*
btw, the way i want to use find by default
(actually, i use replace by default, but same dif),
is for "in_selection" to be true by default,
*unless* the selection is empty.
(
the default is that "in_selection" is *false* by default,
unless the selection contains a newline.
)
i finally got around to digging up how to get that,
which is apparently by changing the *keybindings* you use to pop open the find(/replace) panel?
*/
{ "keys": ["ctrl+f"], "command": "show_panel", "args": {"panel": "replace", "in_selection": true}},
{ "keys": ["ctrl+f"], "command": "show_panel", "args": {"panel": "replace", "in_selection": false},
"context":
[
{ "key": "selection_empty", "operator": "equal", "operand": true}
]
},
(Mac OS X固有のショートカットを使用)some name
をnew name
に置き換える:
some name
を検索: cmdf、タイプsome name
(押す必要がある場合があります return)new name
」と入力しますしない押します return検索するテキストを選択し、検索メニューから[置換]をクリックするだけです。選択した範囲内で自動的に実行されます。
(私の意見では)最善かつ最も役立つ解決策がコメントに隠されていたため、別の回答を追加していますが、ほとんど見落としていました(@mdrozdzielに感謝します)。
検索したいテキストを選択し、 Shift+H 検索と置換ツールバーを表示します。左側のボタン群の右側に button があり、選択範囲内で検索をアクティブにします。
これはST3ではデフォルトでオフになっていますが、"auto_find_in_selection": true
を設定ファイルに追加することで、複数の行を選択したときにデフォルトオンに設定できます( Alt、N、S、Enter)。
選択範囲内で置換を操作するためのキーは最初にテキストを選択する次に検索>置換に移動し、検索して置換するテキストを入力してから- 「選択中」のツールチップのボタンをチェックしてください次に「すべて置換」をクリックします...