2013-08-14 12 views
6

私は、コマンドラインからlldbを使用して、シンプルなCプログラムをデバッグしています。シンボル名のLLDBタブ補完

私のマシンでは、シンボル名にタブ補完機能を使用することができました。たとえば、「b ma」と入力してのタブを入力すると、「b main」にタブで補完されます。他の機能も同様です。

しかし、実際のタブ(ASCII値9)がカーソルの後ろに挿入されているノートパソコンでこの機能を使用することはできません。どちらのマシンも10.8.4で動作しており、最新のXcodeを持っています。

アイデア?

答えて

4

あなたの2つのシステムのどちらかでgdbを実行していると思います。

lldbはタブ補完を行うことができます - それはgdbよりも洗練されたタブ補完を行うことができますが、lldbコマンドの標準形式を使用する必要があります。あなたが使用しているbコマンドはエイリアスです(正規表現エイリアス - ブレークポイントコマンドを解析して正しいことをする正規表現のリスト)lldbタブ補完エンジンにコンテキストに関する十分な情報を与えない何でもあなたは

(lldb) br s -n ma<TAB> 

を行うとしたら

代わりに、それはオートコンプリートでしょう。もちろん、これは短い形式のbreakpoint set --nameです。 breakpoint set --fileファイルタブは、ファイル名として「ファイル」が完成します - あなたはlldbが異なる引数のタブを完全たくさんできることを実現したときに

lldbの賢さをもたらすために入ってきます。 breakpoint set --selectorはセレクタ名を自動補完します。 breakpoint set --shlib(特定のdylib/framework/binaryでのみブレークポイントを設定するように制限する)は、dylibs/frameworks/binariesのリストで自動補完します。

将来的には、bのようなエイリアスコマンドを使用してタブ補完を行いたいと思っていますが、まだ誰もその問題に取り組む時間がありません。

+0

オートコンプリートについて私は[類似の質問があります](http://stackoverflow.com/questions/37612340/when-can-lldb-autocomplete-expression)、あなたは一見できますか? lldbについて何か知っているようだ。ありがとう。 – Karl

関連する問題