On Tue, Jan 27, 2015 at 11:10 PM, Gonzalo Peña-Castellanos <
goanp...@gmail.com> wrote:

> <snip>
>

I have some suggestions that I think would improve and simply the general
spyder UI.  I already explained one, combining the object inspector and
online help.  The others are below.  Note that these are all suggestions.
when I say "should be", I am giving my personal preference (it would just
be too verbose to say "I think it should be that" every line).  Feel free
to take or leave any of these as you see fit.

*Toolbars and Menus*


*File*

   - Add a "Close other" action.
   - "Load session" should open up a list of recent sessions, with an
   option at the end to open a session from a file.
   - There should be an option to rename the session
   - Change "Revert" to "Reload file".

*Edit*

   - Remove the "Delete" item from.  There is a "Delete" key on the
   keyboard.
   - Keep a list of recent items from the clipboard below "copy", "cut",
   and "paste".
   - Have an "Overwrite mode" item.  This should also be shown in the
   status bar

*Search*

   - Get rid of "Find next" and "Find previous".  These are already in the
   search bar.
   - Move everything else to "Edit"
   - Open "Go to line..." in a panel at the bottom of the editor like the
   Find and Find/Replace panels.

*Source*

   - "Convert end of line characters" should be moved into the statusbar,
   with "End of line" being changed into a QtToolButton that show a menu when
   pressed.
   - "Fix indentation" should go in the *Edit* menu below the other
   indentation actions.
   - "Run static code analysis" should go in the *Run* menu below the
   "Profile" action.
   - "Remove trailing spaces" should be moved to *Edit*

*Run*

   - The first two categories should be combined*.  *They aren't really
   logically separate.

*Debug*

   - Flatten the menu.  Move all the submenus to categories in the
   top-level menu.

*Consoles*

   - Move this to the "Consoles" panel.  Add a "New tab" button in the
   "Consoles" panel (more on this later) that is QtToolButton.  When it is
   pressed, it opens a console of the current type.  If long-pressed, it opens
   a menu whose contents are the same as the current *Consoles* menu.

*Tools*

   - Add split view controls here.
   - Add an option to lock the panels here.
   - Add an option to show or hide pep8 issues in the editor.


*Panels*

*Object inspector / Online Help*

   - Combine these into one panel (Just called "Object Inspector").
   Normally, if you enter an object name it will do the same thing as "Object
   inspect" currently.  However, there will be a button to search online, or a
   link at the top of the object information page.  Further, if no results are
   found locally, it will always show a button to search for help online.
   - Get rid of the "Source" dropdown.  If the object is present in the
   console and the editor, show a dropdown in the text entry field that lets
   the user pick one.  (For example "Spam (Editor)" and "Spam (Console IPython
   3258/A)", "Spam (Console Python 1)").
   - Move the "lock" button into the text entry field".
   - Add a "Reload" button that changes to a "Stop" button when loading.
   This would refresh the page on online mode and re-read the object in local
   mode.
   - Get rid of the Online Help "Home" page entirely.
   - Allow the user to open a "find" bar at the bottom in either mode,
   opened from the "Edit" menu or whatever keyboard combination opens "find".

*Variable Explorer*

   - For consistency, move the toolbar to the top.
   - Users should be able to jump to the object inspector from the
   right-click menu.
   - "Refresh periodically" should be in the menu button.
   - Most of the setting should be moved to the preferences.
   - "Import" should be "Open".

*Project Explorer / Outline*

   - These should be combined.
   - Files from open projects should be listed, but so should open files
   not in any project.
   -  It should be be a tree, with project names at the top (with a folder
   icon), then files inside the project, then files not in any project listed
   at the end.
   - Open files should be highlighted, and projects should be expanded
   automatically when a file in it is open.
   - Files should be expandable with the outline inside.
   - The outline toolbar should be eliminated, the expand/contract controls
   should be in the right-click menu only.
   - The "Open" interface for the project should be able to open projects
   or files.

*Console* / *IPython Console* */ Internal Console*

   - These should be combined.
   - As mentioned previously, there should be a "New Tab" QtToolButton.
   Pressing it once opens a new console that is the same as the current type,
   or the same as the default type specified in the preferences (the default
   option in preferences would be "same as current type").  Pressing and
   holding brings up a menu to open a different type.
   - The menu item to open the internal console should be hidden by
   default.  It must be enabled as an option in the preferences.  It is greyed
   out if it is already open.
   - "Kill" and "Stop" buttons should be combined into just "Stop".
   - The menu should be made as consistent as possible between the two.
   Items not available in one type should be greyed out.

*History*

   - Instead of a text field, this should be a tree view, organized by
   session, with the current session expanded.
   - There should be a button and a right-click menu to execute the
   highlighted command (or multiple commands if more than one are
   highlighted).  Ideally each item would have a "Run" button next to it.
   - Items should have small, italicized, desaturated text next to them
   indicating which tab they came from.
   - This should not be a tab view.
   - Font should be system font.
   - There should be an option to save selected history items, or all
   history, to a file.

*Find in Files*

   - This is extremely complicated.
   - "Search" should change to "Stop" when running, they don't need
   separate buttons.
   - KDE's kate has a good way of handling this: there is a button to
   expand additional options, which replaces the results list.  When you do
   the search, it disappears and the results list re-appears.  This allows for
   things to not be so cramped.
   - You have "Regular expression" search in three places, with no clear
   connection to what each should apply to, and using an icon I would never
   guess is for "Regular expression".  I would just use text instead of an
   icon.
   - There should be an "Open" button next to the folder item.
   - The expand/contract buttons should be in the right-click menu only.
   - All other toolbar items should be removed.

*Profiler*

   - The Expand/Contract buttons should be in the right-click menu only.
   - The "Profile" buttons should change to "Stop" when it is running.
   - The file name and time should be in the title (like the file name is
   in the Editor panel).
   - There should be a QtToolButton with a list of files in open projects.
   At the end should be an option to open an arbitrary file.  The existing
   text entry field and open file button should be removed.
   - The "Output" button should be on the same line as the other buttons.

*Static code analysis*

   - Probably just change the name to "Problems" (this is what kdevelop
   calls it, I think it is much more obvious).
   - The file name and time should be in the title (like the file name is
   in the Editor panel).
   - Again, "Analyze" should change to "Stop" when running.
   - Again, "Output" should be on the same line.
   - You shouldn't be able to open a file in the interface.  It should use
   the current file in the editor, or optionally all files in the current
   project or all open files.
   - There should be a button to open a config menu to change the analys
   - Quality should be in the results panel, at the very end or very top.

*Find Bar*

   - You should use up/down arrows not left-right arrows.  First, you
   aren't searching left and right in most cases, you are searching up and
   down.  Second, this could have locale-specific issues (going left goes down
   in some languages).
   - As I said, I don't think the icons are obvious.  They should all be
   text.
   - The whole word/regex thing should probably be a dropdown menu ("Plain
   text", "Whole word", "Regular Expression", KDE text editors also have
   "Escape sequence").
   - For simplicity, the KDE text editors only show the extra options like
   regex and case when doing find/replace.  They show it on the second line,
   the same line as "Replace", which saves a lot of room and keeps the "Find"
   interface very simple.
   - "Replace all" should be a button, not a check box.
   - "Replace/find" should just be "Replace", since it automatically starts
   searching as soon as you type.
   - There should be a check box to limit replacing only to the current
   selection.  It should be checked by default when more than one line is
   selected.


*General*

I think that it would be good by default to use vertical tabs for the
panels, and let users hide all panels in a given toolbar.  That way,
powerful tools can be available at a click without cluttering the interface
too much.

-- 
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 post to this group, send email to spyderlib@googlegroups.com.
Visit this group at http://groups.google.com/group/spyderlib.
For more options, visit https://groups.google.com/d/optout.

Reply via email to