codefori / vscode-ibmi

🌍 IBM i development extension for VS Code
https://codefori.github.io/docs/#/
MIT License
282 stars 92 forks source link

Strange behaviour when changing sources in combination with CTRL+E #2095

Closed michelAlbertijn closed 3 months ago

michelAlbertijn commented 4 months ago

πŸ‘‰πŸ» When you are editing multiple sources at once, save one of the sources, and then press CTRL+E to run a command, all sources that are still not saved, get then automatically saved before the cmd prompt opens. This behaviour is new since one of the latest releases. Before, only the source where you pressed CTRL+E whas saved, the other sources remained unsaved.


Context Version
Code for IBM i version 2.10.1
Visual Studio Code version 1.89.1
Operating System win32_x64
Active extensions ``` Beautify (beautify): 1.5.0 CL (vscode-clle): 1.1.6 COBOL (cobol): 10.5.29 Code for IBM i Walkthroughs (vscode-ibmi-walkthroughs): 0.5.0 Db2 for IBM i (vscode-db2i): 1.0.0 Emmet (emmet): 1.0.0 Error Lens (errorlens): 3.18.0 Git (git): 1.0.0 Git Base (git-base): 1.0.0 GitHub (github): 0.0.1 GitHub Authentication (github-authentication): 0.0.2 IBM i Debug (ibmidebug): 1.0.0 Indenticator (indenticator): 0.7.0 JSON Language Features (json-language-features): 1.0.0 Merge Conflict (merge-conflict): 1.0.0 Node Debug Auto-attach (debug-auto-launch): 1.0.0 Office Viewer(Markdown Editor) (vscode-office): 3.3.3 RPGLE (vscode-rpgle): 0.26.6 TODO Highlight (vscode-todo-highlight): 1.0.5 TypeScript and JavaScript Language Features (typescript-language-features): 1.0.0 ```

Remote system |Setting|Value| |-|-| |IBM i OS|V7R4M0| |Tech Refresh|7| |CCSID Origin|user| |Runtime CCSID|500| |Default CCSID|500| |SQL|Enabled |Source dates|Enabled ### Enabled features |/QOpenSys/pkgs/bin|/usr/bin|/QSYS.lib/ILEDITOR.lib||/QSYS.LIB|/QIBM/ProdData/IBMiDebugService/bin| |-|-|-|-|-|-| |bash|attr|GETNEWLIBL.PGM|ILEDITOR.GETMBRINFO|QZDFMDB2.PGM|startDebugService.sh| |chsh|iconv||||| |git|setccsid||||| |grep|||||| |ls|||||| |md5sum|||||| |sort|||||| |stat|||||| |tar||||||
Shell env ```bash PATH=/QOpenSys/pkgs/bin:/QOpenSys/usr/bin:/usr/ccs/bin:/QOpenSys/usr/bin/X11:/usr/sbin:.:/usr/bin SHELL=/QOpenSys/pkgs/bin/bash SHLVL=1 TZ=-1,M3.5.0,M10.5.0 _=/QOpenSys/pkgs/bin/env ```
Variants ```json { "american": "#@$", "local": "#@$" } ```
Errors ```json [ { "command": "/QOpenSys/usr/bin/qsh", "code": 1, "stderr": "CPF2111: Library ILEDITOR already exists.", }, { "command": "/QOpenSys/usr/bin/qsh", "code": 1, "stderr": "CPF2125: No objects deleted.", }, { "command": "/QOpenSys/usr/bin/qsh", "code": 1, "stderr": "CPD0103: Variable &OPENLIB not allowed for parameter FROMFILE.\nCPD0103: Variable &OPENMBR not allowed for parameter FROMFILE.\nCPF0001: Error found on CPYTOIMPF command.", } ] ```
sebjulliand commented 3 months ago

Hello, this is most likely due to this VSCode settings: image

Since running a Code for IBM i action runs a task, it saves all the dirty editors before running, because of this setting.