2

cmdモジュールを使用してPythoncmdを実装しようとしています。ファイルをオートコンプリートしたいので、いくつかのメソッドを実装しましたが、「complete_put(self、text、line、begidx、endidx):」のテキストパラメーターがすべての「/」文字を削除することを確認しました。誰もがその理由を知っています、そしてどうすればこの行動を避けることができますか?ありがとう :)

4

2 に答える 2

2

私はそれを解決しました。set_completer_delims属性を変更する必要がありました。

于 2012-06-27T09:23:01.480 に答える
0

これは私が使用したコードであり、インターネットで見つかったいくつかの例に基づいています。

import os
import cmd
import readline
class Shell(cmd.Cmd, object):
    def __init__(self):
        cmd.Cmd.__init__(self)

    def __complete_path(self, path=None):
        return ['/bin', '/boot', '/etc']

    def do_put(self,args):
        print args

    def complete_put(self, text, line, begidx, endidx):
        print text
        if not text:
            return self.__complete_path()
        return self.__complete_path(text)
于 2012-06-14T00:32:25.373 に答える