Commit Graph

269 Commits

Author SHA1 Message Date
Roy Qu d629a496ff - fix: Shouldn't auto indent lines starts with "\\".
- enhancement: When problem case's expected output is not too large (<= 5000 line), highlight text in the first different line in the expected output.
  - enhancement: Highlight text in the first different line using the error color.
  - enhancement: Add the option "redirect stderr to the Tools output panel" in the options dialog -> executor -> problem set page.
2023-07-12 12:08:26 +08:00
Roy Qu adcaba29d0 windows'c gcc default to mingw-w64 gcc 2023-06-25 08:53:21 +08:00
Roy Qu 8deb40f9f5 - change: The option "Check for stack smashing attacks (-fstack-protector)" is turned off by default in the Debug compiler set settings. 2023-04-07 09:55:35 +08:00
Roy Qu 7bc4365573 - change: Remove the compiler set option "Syntax error when object larger than" 2023-04-04 08:27:22 +08:00
Roy Qu 68caa885bb - change: Default max function frame size is 2MB under windows / 8MB others. 2023-04-01 11:41:46 +08:00
Roy Qu 7a64538982 - change: Change compiler set option "Syntax error when object larger than" to "Syntax error when function frame larger than"
- fix: Projects created by some templates are not correct when editor's default encoding is not utf8.
2023-03-31 17:39:08 +08:00
Roy Qu b4b41e43a1 - enhancement: Add option in the debug settings, to limit the length of the ouput generated by gdb for arrays. 2023-03-17 08:47:05 +08:00
Roy Qu a8695a96d0 - enhancement: Options in compiler set settings, to generate protection code for stack smashing attack. (Enable for Debug settings by default)
- enhancement: Options in compiler set settings, to enable address sanitizer. Not available in windows.(Enable for Debug settings by default)
2023-03-14 10:02:23 +08:00
Roy Qu 99ca9796b1 fix typos. 2023-03-13 22:00:55 +08:00
Roy Qu 436a047821 - enhancement: Options in compiler set settings, to generate syntax error for large stack objects. 2023-03-13 21:57:15 +08:00
Roy Qu aaac2bfcf7 - enhancement: Warn user and stop compile if project has missing files.
- enhancement: Warn user when exit and save settings failed.
2023-03-12 09:19:02 +08:00
Roy Qu 3b56bab68b refactor: Don't implement custom indent options for C/C++ for now. 2023-03-09 21:08:08 +08:00
Roy Qu 45578a2603 refactor: formatter interface for qsynedit 2023-03-09 20:35:15 +08:00
Cyano Hao bdfa4c066b
Linux package: bundled terminal in AppImage and minor adjustment (#104)
* AppImage: build Alacritty with from-scratch build environment

* enrich compatible terminal list; fix Linux terminal determination

* Linux: get rid of libicu
2023-03-04 18:44:39 +08:00
Roy Qu da3dda97e3 - enhancement: Add "Close window" and "Move to other view" in the "Window" menu
- enhancement: Auto open CPU info dialog, if the program in debug is stopped at a position that have no source file.
  - enhancement: "add watchpoint" when debug. It's hitted when the watch variable is modified, or it's out of scope.
  - enhancement: Switch current call stack frame in the CPU info dialog
  - fix: Shouldn't try evaluate value of the selection in the cpu info dialog.
  - enhancement: Show oct/bin/bin value in the memory view's tooltip.
  - Don't set optimization level to -Og in the Debug compiler set. (Some variable can't be view in the memory view, because they are put in registers.)
2023-03-03 17:20:33 +08:00
Roy Qu 683331e848 - change: Set optimization level to -Og for Debug compiler settings by default. 2023-03-01 21:45:17 +08:00
Roy Qu 7943801f91 - emhancement: Improve display of disassembled codes in the cpu info dialog. 2023-03-01 20:28:00 +08:00
Roy Qu 78739e388a - enhancement: Add "Languages" page group in the options dialog.
- enhancement: Add "ASM Generation" page in the options dialog.
  - change: Move "Custom C/C++ keywords" from group "Editor" to "Lanauges" in the options dialog.
  - change: Rename "Folder" page to "Folder / Reset default settings" in the options dialog.
  - enhancement: Generate asm with/without SEH directives.
  - enhancement: Generate asm using intel style/att style.
  - enhancement: make description for jump/cmov/setb instructions more explicit. (used for signed or unsigned)
2023-02-28 10:49:50 +08:00
Roy Qu 5bef664106 - fix: Search dialog shouldn't have "confirm when replace".
- change: Default value for the debugger debugger panel "memory view's columns" is changed from 8 to 16.
  - change: Default value for the debugger debugger panel "memory view's rows" is changed from 8 to 16.
  - enhancement: Display hex value as ascii chars in the debugger panel memory view tab.
2023-02-25 21:42:30 +08:00
Roy Qu 8ad1915acd - change: Don't stop debug when breakpoint can't be set 2023-02-22 10:39:20 +08:00
Roy Qu 457e84f86a - Enhancement: Correctly init panel sizes when first run. 2023-02-21 09:47:59 +08:00
Roy Qu 24734bfb28 - enhancement: If executable doesn't have symbol table, inform user and stop.
- enhancement: If breakpoint is setted but executable doesn't have debug info ,inform user and stop.
  - enhancement: If current compiler set has "strip addition infos(-s)" enabled, inform user and stop.
2023-02-18 12:08:03 +08:00
Roy Qu dbdf098b94 - enhancement: Limit max speed for mouse scroll (and touch pad?) 2023-02-17 15:33:33 +08:00
Roy Qu 8254de68c8 - enhancement: Delay for tooltips.
- enhancement: "Tool tips delay" option in Options/editor/Tooltips
2023-02-17 09:03:35 +08:00
Roy Qu 3f971b34bb - enhancement: Improve auto indent for embedding no-brace statements like for-for-if. 2023-02-16 22:27:04 +08:00
Roy Qu aaae910c59 - change: The default disassemble style of CPU Dialog is "AT&T" now. 2023-02-13 10:24:35 +08:00
Roy Qu 78ff319a75 - enhancement: Support compile asm files using nasm in the project. 2023-02-08 21:07:41 +08:00
Roy Qu 580a88721f - enhancement: Set lldb-mi as the debugger program for clang, when finding compiler set in folders and gdb doesn't exist. 2023-01-23 19:34:09 +08:00
Roy Qu 7d2920198e - enhancement: Use lldb-mi as the debugger.
- enhancement: Set lldb-mi as the debugger program for clang, when finding compiler set in folders.
2023-01-22 22:19:19 +08:00
Roy Qu 1c8ba68b78 remove debug info 2023-01-19 20:08:22 +08:00
Roy Qu 4456772fa7 - enhancement: Code Completion now respect compiler set's language standard settings. 2023-01-19 11:08:32 +08:00
Roy Qu dbc9a1829c - fix: Project's file encoding is wrongly set to 'AUTO' when load project. 2023-01-15 15:57:48 +08:00
Roy Qu aa62f95cad - enhancement: Auto backup editing contents. (Save editing contents 3 seconds after input stopped. Auto delete when editor successfully closed)
- enhancement: Add "Auto backup editing contents" option in options/editor/auto save
2023-01-15 13:32:33 +08:00
Roy Qu ea26548835 - enhancement: Add "Open files in editor" in the search panel
- enhancement: Auto disable the "in project" option in the "search in files" dialog, if no project is opened.
  - enhancement: Auto disable the "search again" button in the search panel if the current search history item is search in the project, and no project is opened.
2023-01-12 16:53:00 +08:00
Roy Qu 32088a18d0 - change: Disable undo limit by default. 2023-01-06 11:59:21 +08:00
Cyano Hao 375e990e0b
Add more Linux packaging format (#89)
* Arch Linux packaging; make LIBEXECDIR configurable

* update docs

* resolve libexec and share from relative path

* AppImage packaging

* allow build AppImage on Windows host
2023-01-03 12:18:02 +08:00
Roy Qu 84b09fe842 - enhancement: "Convert HTML for - Input" / "Convert HTML for - Expected" in "Options" - "Executor" - "Problem Set"
- fix: Unit for memory limit is not correctly loaded when open problem properties dialog.
  - enhancement: Auto open the properties dialog, after add a new problem.
2022-12-24 12:08:13 +08:00
Cyano Hao 7fcd73abfc
Disable Address Sanitizer on non-x86 64-bit Linux (#87)
* disable ASan on non-x86 64-bit linux

* add "debug with ASan" compiler set

* set default compiler set back to "debug"

* enable ASan compiler for linux only

* default to "debug with ASan" on x86-64 or 32-bit, "debug" for others
2022-12-21 19:35:38 +08:00
Roy Qu 892b987894 - enhancement: "Line Spacing" in options / editor / font
- enhancement: "Show whitespaces" in options / editor / font
2022-12-20 20:38:02 +08:00
Roy Qu ed89690f7a - fix: Icon size not correct under macOS high DPI / zoom factor settings.
- enhancement: "Icon zoom" in options / environment / appearance
2022-12-20 11:01:04 +08:00
Roy Qu 1da2961970 - fix: Project's "static link" option is overwrited by global compiler set settings, when project options dialog is opened. 2022-12-18 12:31:19 +08:00
Roy Qu 07f6b975f1 fix: auto find compilers failed. 2022-12-16 16:36:59 +08:00
Roy Qu 492345b939 - enhancement: "Trim trailing spaces" in code menu
- change: Don't auto disable compile and debug buttons.
  - enhancement: Better error messages for missing compile/debug/make programs.
  - enhancement: "Show special chars" in options / editor / font
  - fix: Lost compiler set settings if a compiler set's bin dirs is empty.
  - enhancement: Better error message when trying to debug with Release compile set.
2022-12-16 11:10:46 +08:00
Roy Qu 16db14e761 - enhancement: "Remove trailing spaces" in options / editor / misc
- enhancement: show special chars
2022-12-16 01:03:57 +08:00
Roy Qu 02e6748db5 - fix: Buttons in options -> compiler -> compiler set -> programs are not usable.
- enhancement: Don't check existence of gcc/g++/make/gdb at startup.
  - enhancement: Auto disable "compile" button if gcc doesn't exist.
  - enhancement: Auto disable "debug" button if gdb doesn't exist.
  - enhancement: Auto disable "compile" button for project if make doesn't exist.
2022-12-13 15:58:27 +08:00
Roy Qu e81c08d6c8 refactor: correct var name 2022-12-13 12:40:54 +08:00
Roy Qu ea3b4ea8e5 - enhancement: Show memory usage after console program exited.
- fix: If clang and g++ are in the same folder, only the compiler sets for gcc are auto generated.
2022-12-13 12:36:16 +08:00
Roy Qu 2520ddf8f5 - enhancement: Show memory usage for problem cases. 2022-12-13 08:49:20 +08:00
Roy Qu 325fe71567 simplify isTarget64Bit 2022-12-11 22:43:23 +08:00
Cyano Hao 23af39395e check 64-bit by comparing with a specific list 2022-12-11 18:22:44 +08:00