This revision was automatically updated to reflect the committed changes. Closed by commit rL272387: [include-fixer] give users an option to show N more headers in case there are⦠(authored by ioeric).
Changed prior to commit: http://reviews.llvm.org/D21181?vs=60338&id=60342#toc Repository: rL LLVM http://reviews.llvm.org/D21181 Files: clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py Index: clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py =================================================================== --- clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py +++ clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py @@ -34,30 +34,41 @@ 1, vim.eval('g:clang_include_fixer_maximum_suggested_headers')) +increment_num=5 +if vim.eval('exists("g:clang_include_fixer_increment_num")') == "1": + increment_num = max( + 1, + vim.eval('g:clang_include_fixer_increment_num')) def GetUserSelection(message, headers, maximum_suggested_headers): eval_message = message + '\n' for idx, header in enumerate(headers[0:maximum_suggested_headers]): eval_message += "({0}). {1}\n".format(idx+1, header) eval_message += "Enter (q) to quit;" if maximum_suggested_headers < len(headers): - eval_message += " (a) to show all candidates."; + eval_message += " (m) to show {0} more candidates.".format( + min(increment_num, len(headers) - maximum_suggested_headers)) + eval_message += "\nSelect (default 1): " res = vim.eval("input('{0}')".format(eval_message)) if res == '': # choose the top ranked header by default idx = 1 elif res == 'q': raise Exception(' Insertion cancelled...') - elif res == 'a' and maximum_suggested_headers < len(headers): - return GetUserSelection(message, headers, len(headers)) + elif res == 'm': + return GetUserSelection(message, + headers, maximum_suggested_headers + increment_num) else: try: idx = int(res) if idx <= 0 or idx > len(headers): raise Exception() except Exception: - raise Exception(' ERROR: Invalid option "{0}"...Abort!'.format(res)) + # Show a new prompt on invalid option instead of aborting so that users + # don't need to wait for another include-fixer run. + print >> sys.stderr, "Invalid option:", res + return GetUserSelection(message, headers, maximum_suggested_headers) return headers[idx-1] def execute(command, text):
Index: clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py =================================================================== --- clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py +++ clang-tools-extra/trunk/include-fixer/tool/clang-include-fixer.py @@ -34,30 +34,41 @@ 1, vim.eval('g:clang_include_fixer_maximum_suggested_headers')) +increment_num=5 +if vim.eval('exists("g:clang_include_fixer_increment_num")') == "1": + increment_num = max( + 1, + vim.eval('g:clang_include_fixer_increment_num')) def GetUserSelection(message, headers, maximum_suggested_headers): eval_message = message + '\n' for idx, header in enumerate(headers[0:maximum_suggested_headers]): eval_message += "({0}). {1}\n".format(idx+1, header) eval_message += "Enter (q) to quit;" if maximum_suggested_headers < len(headers): - eval_message += " (a) to show all candidates."; + eval_message += " (m) to show {0} more candidates.".format( + min(increment_num, len(headers) - maximum_suggested_headers)) + eval_message += "\nSelect (default 1): " res = vim.eval("input('{0}')".format(eval_message)) if res == '': # choose the top ranked header by default idx = 1 elif res == 'q': raise Exception(' Insertion cancelled...') - elif res == 'a' and maximum_suggested_headers < len(headers): - return GetUserSelection(message, headers, len(headers)) + elif res == 'm': + return GetUserSelection(message, + headers, maximum_suggested_headers + increment_num) else: try: idx = int(res) if idx <= 0 or idx > len(headers): raise Exception() except Exception: - raise Exception(' ERROR: Invalid option "{0}"...Abort!'.format(res)) + # Show a new prompt on invalid option instead of aborting so that users + # don't need to wait for another include-fixer run. + print >> sys.stderr, "Invalid option:", res + return GetUserSelection(message, headers, maximum_suggested_headers) return headers[idx-1] def execute(command, text):
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits