Re: [Pydev-code] Wrap paragraph Pydev script available for testing
Brought to you by:
fabioz
From: Don T. <nos...@gm...> - 2006-05-21 16:46:34
|
Fabio Zadrozny wrote: > I've checked it, and I have some suggestions: > 1. Instead of having 80 as the default, you could use the preferences > the user specified as its print margin: > > from org.python.pydev.plugin import PydevPlugin > from org.eclipse.ui.texteditor import > AbstractDecoratedTextEditorPreferenceConstants > cols = > PydevPlugin.getChainedPrefStore().getInt(AbstractDecoratedTextEditorPreferenceConstants.EDITOR_PRINT_MARGIN_COLUMN > ); > That is really good. Done - I have updated the version on the web page: http://pilger.googlepages.com/pydevstuff Actually, this brings up an observation about Pydev extension scripts: there is no mechanism to allow a script to have preferences. I don't know how you could provide one, but it would be nice. > 2. When you try to indent the following: > > #_line_to_wrap1_eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee > # class Foo: > # def m1(): > # pass > #_line_to_wrap2_eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee > > if you start doing it at the first line, it will stop there, and not get > the full comment block (so, I think it could indent all that started > with '#' + character, instead of bailing out when it finds the first '#' > + space) I have kept this thing simple as I did not want to get into analyzing what the text actually is (code or text) because then I would have to do different things. If it is indented multiline text then I should rewrap it to the new indentation, if it is a bunch of lines of code starting at the same indent then I should leave them alone. I don't know how to distinguish: # This is line one, # and this is line two that should be wrapped. from: # print "This is line one, " # print " and this is line two that should not be wrapped." Your observation would also apply to lines inside multiline docstrings. I bailed on doing this much analysis. I bailed on rewrapping more than one paragraph and I even bailed on handling the first line of a docstring. I may do more later but so far I have not found these restrictions too much of a burden, especially when compared to reformatting comments by hand. I think that this thing obeys the Pareto Principle - it does 80% of what I want for 20% of the effort required to do it completely. Don |