Opened 4 years ago
Closed 4 years ago
#4571 closed enhancement (fixed)
GUI 'cd'
Reported by: | Tristan Croll | Owned by: | pett |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | General Controls | Version: | |
Keywords: | Cc: | Elaine Meng, Tom Goddard | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Windows-10-10.0.19041 ChimeraX Version: 1.1 (2020-09-09 22:22:27 UTC) Description Thinking about the annoying issue with Windows' OneDrive removing C:\Users\{user}\Desktop got me thinking... it would be *really* nice to have a "change working directory" tool in the GUI (perhaps as a button in the File section of the Home tab?). Currently the only "nice" solution to this is using cd in the Python shell - I know you can also do it on the command line, but that doesn't tab-complete. Also, in Windows it might be a good idea that when ChimeraX is launched from the standard menu icon it sets its working directory to the user's desktop? Currently it starts in the somewhat-obscure C:\ProgramData\ChimeraX. Log: UCSF ChimeraX version: 1.1 (2020-09-09) © 2016-2020 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > ui tool show Shell > pwd Current working directory is: C:\ProgramData\ChimeraX OpenGL version: 3.3.0 NVIDIA 426.00 OpenGL renderer: GeForce GTX 1070/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Manufacturer: ASUSTeK COMPUTER INC. Model: GL502VS OS: Microsoft Windows 10 Home (Build 19041) Memory: 34,292,408,320 MaxProcessMemory: 137,438,953,344 CPU: 8 Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz" PyQt version: 5.12.3 Compiled Qt version: 5.12.4 Runtime Qt version: 5.12.9 Installed Packages: alabaster: 0.7.12 appdirs: 1.4.4 Babel: 2.8.0 backcall: 0.2.0 blockdiag: 2.0.1 certifi: 2020.6.20 chardet: 3.0.4 ChimeraX-AddH: 2.1.3 ChimeraX-AlignmentAlgorithms: 2.0 ChimeraX-AlignmentHdrs: 3.2 ChimeraX-AlignmentMatrices: 2.0 ChimeraX-Alignments: 2.1 ChimeraX-Arrays: 1.0 ChimeraX-Atomic: 1.6.1 ChimeraX-AtomSearch: 2.0 ChimeraX-AxesPlanes: 2.0 ChimeraX-BasicActions: 1.1 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 1.0.1 ChimeraX-BondRot: 2.0 ChimeraX-BugReporter: 1.0 ChimeraX-BuildStructure: 2.0 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.0 ChimeraX-ButtonPanel: 1.0 ChimeraX-CageBuilder: 1.0 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.1 ChimeraX-ChemGroup: 2.0 ChimeraX-Clashes: 2.0 ChimeraX-Clipper: 0.15.0 ChimeraX-ColorActions: 1.0 ChimeraX-ColorGlobe: 1.0 ChimeraX-CommandLine: 1.1.3 ChimeraX-ConnectStructure: 2.0 ChimeraX-Contacts: 1.0 ChimeraX-Core: 1.1 ChimeraX-CoreFormats: 1.0 ChimeraX-coulombic: 1.0.1 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-DataFormats: 1.0 ChimeraX-Dicom: 1.0 ChimeraX-DistMonitor: 1.1 ChimeraX-DistUI: 1.0 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ExperimentalCommands: 1.0 ChimeraX-FileHistory: 1.0 ChimeraX-FunctionKey: 1.0 ChimeraX-Geometry: 1.1 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.0 ChimeraX-Hbonds: 2.0 ChimeraX-Help: 1.0 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.0 ChimeraX-ImageFormats: 1.0 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0 ChimeraX-ISOLDE: 1.1.0 ChimeraX-Label: 1.0 ChimeraX-ListInfo: 1.0 ChimeraX-Log: 1.1.1 ChimeraX-LookingGlass: 1.1 ChimeraX-Map: 1.0.1 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0 ChimeraX-MapFilter: 2.0 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.0 ChimeraX-Markers: 1.0 ChimeraX-Mask: 1.0 ChimeraX-MatchMaker: 1.1 ChimeraX-MDcrds: 2.0 ChimeraX-MedicalToolbar: 1.0.1 ChimeraX-Meeting: 1.0 ChimeraX-MLP: 1.0 ChimeraX-mmCIF: 2.2 ChimeraX-MMTF: 2.0 ChimeraX-Modeller: 1.0 ChimeraX-ModelPanel: 1.0 ChimeraX-ModelSeries: 1.0 ChimeraX-Mol2: 2.0 ChimeraX-Morph: 1.0 ChimeraX-MouseModes: 1.0 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nucleotides: 2.0 ChimeraX-OpenCommand: 1.2.1 ChimeraX-PDB: 2.1 ChimeraX-PDBBio: 1.0 ChimeraX-PickBlobs: 1.0 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.0 ChimeraX-PubChem: 2.0 ChimeraX-Read-Pbonds: 1.0 ChimeraX-Registration: 1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-ResidueFit: 1.0 ChimeraX-RestServer: 1.0 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 2.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.2 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0 ChimeraX-SeqView: 2.2 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0 ChimeraX-Shortcuts: 1.0 ChimeraX-ShowAttr: 1.0 ChimeraX-ShowSequences: 1.0 ChimeraX-SideView: 1.0 ChimeraX-Smiles: 2.0 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.0.4 ChimeraX-STL: 1.0 ChimeraX-Storm: 1.0 ChimeraX-Struts: 1.0 ChimeraX-Surface: 1.0 ChimeraX-SwapAA: 2.0 ChimeraX-SwapRes: 2.0 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.0 ChimeraX-ToolshedUtils: 1.0 ChimeraX-Tug: 1.0 ChimeraX-UI: 1.2.3 ChimeraX-uniprot: 2.0 ChimeraX-ViewDockX: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0 ChimeraX-WebServices: 1.0 ChimeraX-Zone: 1.0 colorama: 0.4.3 comtypes: 1.1.7 cxservices: 1.0 cycler: 0.10.0 Cython: 0.29.20 decorator: 4.4.2 distlib: 0.3.1 docutils: 0.16 filelock: 3.0.12 funcparserlib: 0.3.6 gdcm: 2.8.8 grako: 3.16.5 h5py: 2.10.0 html2text: 2020.1.16 idna: 2.10 ihm: 0.16 imagecodecs: 2020.5.30 imagecodecs-lite: 2020.1.31 imagesize: 1.2.0 ipykernel: 5.3.0 ipython: 7.15.0 ipython-genutils: 0.2.0 jedi: 0.17.2 Jinja2: 2.11.2 jupyter-client: 6.1.3 jupyter-core: 4.6.3 kiwisolver: 1.2.0 line-profiler: 2.1.2 lxml: 4.5.1 MarkupSafe: 1.1.1 matplotlib: 3.2.1 msgpack: 1.0.0 netifaces: 0.10.9 networkx: 2.4 numexpr: 2.7.1 numpy: 1.18.5+mkl numpydoc: 1.0.0 openvr: 1.12.501 packaging: 20.4 parso: 0.7.1 pickleshare: 0.7.5 Pillow: 7.1.2 pip: 20.2.2 pkginfo: 1.5.0.1 prompt-toolkit: 3.0.7 psutil: 5.7.0 pycollada: 0.7.1 pydicom: 2.0.0 Pygments: 2.6.1 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 2.4.7 PyQt5-commercial: 5.12.3 PyQt5-sip: 4.19.19 PyQtWebEngine-commercial: 5.12.1 python-dateutil: 2.8.1 pytz: 2020.1 pywin32: 228 pyzmq: 19.0.2 qtconsole: 4.7.4 QtPy: 1.9.0 RandomWords: 0.3.0 requests: 2.24.0 scipy: 1.4.1 setuptools: 49.4.0 sfftk-rw: 0.6.6.dev0 six: 1.15.0 snowballstemmer: 2.0.0 sortedcontainers: 2.2.2 Sphinx: 3.1.1 sphinxcontrib-applehelp: 1.0.2 sphinxcontrib-blockdiag: 2.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 1.0.3 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.4 suds-jurko: 0.6 tables: 3.6.1 tifffile: 2020.6.3 tinyarray: 1.2.2 tornado: 6.0.4 traitlets: 5.0.4 urllib3: 1.25.10 wcwidth: 0.2.5 webcolors: 1.11.1 wheel: 0.34.2 WMI: 1.5.1
Change History (9)
comment:1 by , 4 years ago
Cc: | added |
---|---|
Component: | Unassigned → General Controls |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → accepted |
Summary: | ChimeraX bug report submission → GUI 'cd' |
Type: | defect → enhancement |
comment:2 by , 4 years ago
Cc: | added; removed |
---|---|
Owner: | changed from | to
Status: | accepted → assigned |
follow-up: 3 comment:3 by , 4 years ago
I didn't know about the "cd browse" option - that certainly makes things easier, but is perhaps a bit obscure (I just assumed that the "cd" command would behave essentially like Bash cd, and never looked at its documentation). If not a button, perhaps a text ("Set working directory") entry in the File menu? Also, just tried dragging-and-dropping a directory with spaces in the name into the command line - parsing fails at the first space. ________________________________ From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> Sent: 28 April 2021 17:43 Cc: goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>; meng@cgl.ucsf.edu <meng@cgl.ucsf.edu>; pett@cgl.ucsf.edu <pett@cgl.ucsf.edu>; Tristan Croll <tic20@cam.ac.uk> Subject: Re: [ChimeraX] #4571: GUI 'cd' #4571: GUI 'cd' ---------------------------------------+------------------------- Reporter: Tristan Croll | Owner: Tom Goddard Type: enhancement | Status: assigned Priority: normal | Milestone: Component: General Controls | Version: Resolution: | Keywords: Blocked By: | Blocking: Notify when closed: | Platform: all Project: ChimeraX | ---------------------------------------+------------------------- Changes (by Eric Pettersen): * cc: Tom Goddard (removed) * cc: Eric Pettersen (added) * owner: Eric Pettersen => Tom Goddard * status: accepted => assigned Comment: Hi Tristan, I'm not 1000% convinced this is necessary. First off, 'cd browse' will bring up a file browser for where you want to cd to. Also, the command line accepts drag and drop, so you can type "cd " and then drop the folder you want to cd to. Now, the fact that ChimeraX starts in C:\ProgramData\ChimeraX on Windows seems like a bug. I thought Tom had code in there to have ChimeraX start in the Desktop folder for each platform. --Eric -- Ticket URL: <https://plato.cgl.ucsf.edu/trac/ChimeraX/ticket/4571#comment:2> ChimeraX <http://www.rbvi.ucsf.edu/chimerax/> ChimeraX Issue Tracker
comment:4 by , 4 years ago
For now you will have to type the initial quote, drop the text, and then type the closing quote. In tomorrow's builds the quotes will be added automatically.
follow-up: 5 comment:5 by , 4 years ago
OK. If I do as you say, I also need to manually remove the leading slash (i.e. "cd 'C:/...'" works, "cd '/C:/...'" doesn't). ________________________________ From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> Sent: 28 April 2021 18:48 Cc: goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>; meng@cgl.ucsf.edu <meng@cgl.ucsf.edu>; pett@cgl.ucsf.edu <pett@cgl.ucsf.edu>; Tristan Croll <tic20@cam.ac.uk> Subject: Re: [ChimeraX] #4571: GUI 'cd' #4571: GUI 'cd' ---------------------------------------+------------------------- Reporter: Tristan Croll | Owner: Tom Goddard Type: enhancement | Status: assigned Priority: normal | Milestone: Component: General Controls | Version: Resolution: | Keywords: Blocked By: | Blocking: Notify when closed: | Platform: all Project: ChimeraX | ---------------------------------------+------------------------- Comment (by Eric Pettersen): For now you will have to type the initial quote, drop the text, and then type the closing quote. In tomorrow's builds the quotes will be added automatically. -- Ticket URL: <https://plato.cgl.ucsf.edu/trac/ChimeraX/ticket/4571#comment:4> ChimeraX <http://www.rbvi.ucsf.edu/chimerax/> ChimeraX Issue Tracker
comment:6 by , 4 years ago
If what you're saying is correct, then on Windows the text representation of the MIME data of the drop event starts with a slash. Sigh. I'll add some code for that dumb behavior....
comment:7 by , 4 years ago
Cc: | added; removed |
---|---|
Owner: | changed from | to
Could have a graphical user interface to set the current working directory. Some users will figure out the cd command, but almost none will figure out drag or drop or "browse". I don't think I would ever get to making such a gui so reassigning to Eric.
ChimeraX is supposed to start in ~/Desktop when started from an icon on Windows. That is a separate and more important bug and is likely because of OneDrive and the fact that ~/Desktop expands to a non-existent directory. When that happens the app stays in whatever startup directory was specified by the ChimeraX icon. We have a separate ticket from you for ~/Desktop not expanding correctly when OneDrive has changed the desktop location. Fixing that would resolve the problem.
comment:9 by , 4 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Put a "Set Working Folder" entry in the File menu which simply issues "cd browse".
Hi Tristan,
--Eric