nevermind - this feature is already there: when I select "black" in "formatting on save" it becomes the available option on right click - this is brilliant!
On Monday, 12 April 2021 at 13:23:32 UTC+2 Moritz Lürig wrote: > that's cool!! > > I figured that for me this feature is only useful when finishing up > scripts or parts of modules. however, I often have scripts for > data-analysis that I tinker a lot with, in which case I don't want the > entire script formatted, but select parts that are "finished" and that I > want to then format. do you think that "formatting on save" could be turned > into another feature where you apply formatting on selection of the current > script? wonder how hard this would be - worth a feature request? > > > > On Friday, 9 April 2021 at 10:07:50 UTC+2 kikoco...@gmail.com wrote: > >> 2021-04-09 8:30 GMT+02:00, yfprojects <yfpro...@gmail.com>: >> > Hello there, >> > >> > Spyder already has *autopep8*, *yapf* and *black* integrated. You can >> > choose which one Spyder should use when formatting in the preferences. >> Go >> > to *Preferences* > *Completion and linting* > *Code style and >> formatting* > >> > *Code >> > formatting*. The formatting of >> > *yapf* is what you are looking for. I actually wasn't able to get the >> yapf >> > integration running but Spyder says that it should be working. If it >> > doesn't work you can also use yapf from the command line. >> > >> >> I do this by printing the lists in the console, and then copying them >> > back to the editor. however, in the console they wrap after each item, >> so >> > that they take a lot of space vertically. >> > >> > My console within Spyder doesn't wrap after each element. It actually >> > doesn't insert line endings at all. >> > >> > Kind regards >> > yfprojects >> >> I was not aware of this. You can access this option going to 'Tools > >> preferences > Completion and linting > Code formatting' >> >> Good to know!! >> >> > >> > >> > moritz...@gmail.com schrieb am Donnerstag, 8. April 2021 um 11:30:20 >> UTC: >> > >> >> > Spyder shouldn't dictate how your code should look. It is better to >> >> separate the IDE functionality itself from other needs the users could >> >> have. >> >> >> >> I agree, that's why I think it should be optional, e.g. by using >> plugins >> >> like yours, or black. In fact, I just discovered that Spyder already >> has >> >> such functionality: on rightclick, you can format your selection with >> >> autopep8, but this doesn't format the lists to be less than 79 >> characters >> >> >> >> wide. >> >> >> >> In any case, I think that something like this, or your plugin, or a >> black >> >> >> >> plugin that works on sections or just the selected code would be a >> great >> >> feature for Spyder. I mean, producing legible, PEP-conform Python >> scripts >> >> >> >> is part of Spyder's mission, no? >> >> >> >> On Wednesday, 7 April 2021 at 18:41:36 UTC+2 kikoco...@gmail.com >> wrote: >> >> >> >>> 2021-04-07 10:24 GMT+02:00, Moritz Lürig <moritz...@gmail.com>: >> >>> > TL;DR can we have hard wrapping of lists to a specific length in >> the >> >>> > editor? >> >>> > >> >>> > I am often working with lists that are longer than 79 characters, >> e.g. >> >>> > >> >>> > column names of wide pandas dataframes, which I sometimes need to >> >>> hardcode >> >>> > in the script for reproducibility. I do this by printing the lists >> in >> >>> the >> >>> > console, and then copying them back to the editor. however, in the >> >>> console >> >>> > they wrap after each item, so that they take a lot of space >> vertically. >> >>> > >> >>> I >> >>> > then have to copy them to another editor (e.g. notepad++), remove >> all >> >>> > linebreaks, an then manually wrap them by adding line breaks. this >> is >> >>> > tedious, and I was wondering whether we could have this >> functionality >> >>> in >> >>> > Spyder to make our scripts more readible, and adhere PEP formatting >> >>> > suggestions? >> >>> >> >>> You could use black or yapf or.... to format your files. Spyder >> >>> shouldn't dictate how your code should look. It is better to separate >> >>> the IDE functionality itself from other needs the users could have. >> >>> >> >>> I've made a spyder plugin to integrate black within Spyder but it was >> >>> for Spyder 3.x [1]. It shouldn't be difficult to update it to be >> >>> compatible to Spyder 5.x but I don't think I could find time in the >> >>> short term to learn the new plugin infrastructure in Spyder 5.x. >> >>> >> >>> [1] https://github.com/kikocorreoso/spyder-black-formatter >> >>> >> >>> > >> >>> > references: >> >>> > >> >>> >> https://superuser.com/questions/1088622/notepad-split-line-after-given-number-of-characters >> >> >>> >> >>> > >> >>> >> https://stackoverflow.com/questions/4248726/how-can-i-insert-a-carriage-return-linefeed-every-x-characters-with-notepad >> >> >>> >> >>> > >> >>> > >> >>> > -- >> >>> > You received this message because you are subscribed to the Google >> >>> Groups >> >>> > "spyder" group. >> >>> > To unsubscribe from this group and stop receiving emails from it, >> send >> >>> > >> >>> an >> >>> > email to spyderlib+...@googlegroups.com. >> >>> > To view this discussion on the web visit >> >>> > >> >>> >> https://groups.google.com/d/msgid/spyderlib/6d63e894-72f9-42be-9305-e799f4e111ffn%40googlegroups.com. >> >> >> >>> >> >>> >> >>> > >> >>> >> >> >> > >> > -- >> > You received this message because you are subscribed to the Google >> Groups >> > "spyder" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> an >> > email to spyderlib+...@googlegroups.com. >> > To view this discussion on the web visit >> > >> https://groups.google.com/d/msgid/spyderlib/b03bf411-1110-42ff-8eda-d8c0416c72abn%40googlegroups.com. >> >> >> > >> > -- You received this message because you are subscribed to the Google Groups "spyder" group. To unsubscribe from this group and stop receiving emails from it, send an email to spyderlib+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/spyderlib/68222f80-b2c5-4431-b601-aec34380ab64n%40googlegroups.com.