Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 02/04/22 in all areas

  1. Please see these earlier posts on SynEdit history: SynEdit preferred version? - Delphi Third-Party - Delphi-PRAXiS [en] (delphipraxis.net) Turbo SynEdit & Font Ligatures - VCL - Delphi-PRAXiS [en] (delphipraxis.net) DirectWrite and Unicode support One of the major flaws of SynEdit was the poor handling of Unicode. A major update has been committed to the TurboPack fork, that employs DirectWrite for text painting and fixes Unicode support. SynEdit should now be on a par with, if not better than, the best editors around with respect to Unicode handling. For example: Chinese is properly spaced and surrogate pairs and color emojis are fully supported: Bidirectional text editing is fully supported as well: WordWrap has been re-written and is now based on DirectWrite as well. This last update also includes other enhancements as for example an option to alpha blend the selection, another option for selection to cover just selected text instead of full lines, as in VS code and other editors, and horizontal mouse wheel scrolling: Other recent improvements: The undo/redo system was buggy and a mess, getting in the way of implementing new features. I has been reimplemented from scratch. The gutter has been reimplemented from scratch and is now flexible and extensible. A track changes bar like in Visual Studio has been added and unlike Delphi's it saves and restores line state correctly on undo/redo. The code base has been refactored cleaned-up, and partially documented, yet, and despite of the new features, it is thousands of lines shorter than the original. But a lot more can be done in this area. See here for the full list of enhancements in the the TurboPack fork. Backward compatibility Turbopack Synedit remains compatible with earlier versions of Synedit, but you do need to reinstall Synedit, load forms that use SynEdit ignoring error messages and save them again for the new properties to take effect. The use of DirectWrite though means that Windows XP is no longer supported. The TurboPack SynEdit fork supports Delphi versions Berlin or later. Future plans The next big planned feature is multi-selection and multi-cursor editing. Support the project Most of the bugs remaining in the issue tracker are C++Builder related. Also, the C++ packages have not been updated yet. We are actively seeking contributions on the C++Builder side of things (package updates, bug fixes). Of course you can also support the project by submitting bug reports and pull requests. Or, by implementing new features (e.g. minimap, Sync Edit like in Delphi, Delphi or VS-code like templates etc.) Note: Many thanks to @MarkShark for his great contributions to the SynEdit project.
  2. pyscripter

    TSynEdit - Custom Highlighter

    - Update your SynEdit to the latest version from TurboPack/SynEdit: SynEdit is a syntax highlighting edit control, not based on the Windows common controls. (github.com) - Look at the SynGen folder. The file Highlighters-HowTo.htm explains the basic steps. You need to create a grammar file and then SynGen.exe will generate your highlighter.
  3. Xmas came early this year - and, as much as time permits, I will attempt to brave new frontiers. This is more or less my first attempt to use MacOS, and to make things even more exciting, I added the preview version of Windows 11 for ARM to a Parallels VM and I'm installing RAD Studio under that. I will prolly have a thousand MacOS / XCode questions... so any pointers to tips on getting a smooth start with XCode and Delphi will be much appreciated.
  4. The new GExperts version still supports all Delphi versions back to Delphi 6 (with the notable exception of Delphi 😎 and even the Delphi 11 version is no longer in Alpha state (but it’s still beta, there will be glitches!). Support for per monitor DPI awareness should now work (in Delphi 11, and definitely better than in the IDE itself). There are even a few new features ... Read on in the blog post.
  5. Yes, through context switches the OS preserves the CPU and FPU state which is part of the thread context
  6. Lars Fosdal

    Delphi on Windows 11 on MacBook Pro 16 (2021)

    For the M-series ARM CPUs, Windows 11 for ARM is the only viable option. Parallells' seamless Windows on MacOS solution is mindblowing. I am working on integration solutions using IBM App Connect Enterprise these days, so I've not been able to spend so much time with Delphi on the Mac as I'd like to. Our company is moving away from Delphi, and the current app portfolio has gone into care & maintenance mode and will in time be replaced with commercial shelf-ware, so my active Delphi time will be greatly reduced going forward. As for using Delphi under Win4ARM om M1 - compilation is not a problem, but I have not had time to test debugging on iOS/Android at all, so others must peep up about any eventual issues on that. Other than the debuggers of Delphi being in an awful state in general - as long as the VM is set up to reroute the USB connections correctly, I would not expect any issues. I went for Pro + 32Gb + 2TB as I don't expect to need those gfx cores. I'd opt for a 64Gb Pro if there was one, but only Max supports 64Gb. I have to say it is an awesome piece of HW - although - during the winter, I actually miss the heat from the Intel CPU on the Lenovo 😛 I'd opt for even more storage, but Apple are greedy AF.
  7. I set the floating point control state to the Windows default (which masks exceptions) before calling any external library, and then restore it when those calls return. In order for this to work reliably in a multi-threaded environment you need to do some serious RTL patching to fix the thread safety issues. No, it is possible to fix the RTL so that you don't require such an invasive solution as you imagine. My numerical software does this. Many years ago I submitted a QC report with the attached document which explains how to fix it. Embarcadero have done nothing yet, although deleting QC meant that my report disappeared from public view! Rethinking Delphi Floating Point Control Register Management.pdf
  8. Stefan Glienke

    Announcement: Magenta Hardware Components

    The early 2000s want their website design back
  9. I agree, Enable(True) is just bad. It is either Enabled := True and Enabled := False or Enable and Disable; It is quite similar to TDataSet having Active, Open and Close. Side note: we can see a problem here where Open can bei either a state or an operator. Thus I prefer the Is prefix for states: IsOpen, IsEnabled for clarity. (Is only serves as a placeholder here for syntactical equivalents appropriate for the used wording and intention).
  10. Silver Black

    Parnassus Bookmarks for Delphi 11 Alexandria?

    Yes, totally agree. And you know what? Now I got re-used to the old Delphi IDE bookmarks system again and I I like it, it's fast and does it's job. I think I don't even reinstall the Parnassus add-ons if available.
  11. That didn't answer my question: Why should they? "There's little cost" isn't a reason because there's even less cost in not doing it. IMO nobody will benefit from browsers supporting this format (apart from the authors ego 🙂 ).
  12. Phosphoglucose Isomerase ? https://www.abbreviationfinder.org/acronyms/pgi.html
  13. futuron

    Delphi on Windows 11 on MacBook Pro 16 (2021)

    Hi Lars, not sure why you are having problems. I think I have the same setup and mine works like a charm. Compilation speed is totally absurd. My previous dev environment was on a late 2014 Macbook Pro (16GB mem, and additional Nvidia graphics). My new Laptop with an M1 Max processor (32GB mem) is a beast compared to my old laptop (and a beast to any other Windows laptop in our building - lol). Not really fair because having six years in-between, but compared to my home-game computer this this is fast! Real fast! Back to your problem, maybe telling about my setup, and the following order of getting to that setup helps: MacBook Pro 16 (M1 Max processor): macOS Monterey (version 12.0.1) installed Xcode 13 (v13.1) and inside of that I created a few signing certificates (apple development, and apple distribution certificate) Parallels Desktop Version 17.1.0 (51516) Inside Parallels: Installed "Windows 11 Pro Insider Preview" installed (thus ARM version) inside (Build 2250.rs_prerelease.211112-1650) I left everything to standard/automatic (such as CPU&Memory is set to "automatic" on my machine) graphics set to "best for external displays" as I typically run Windows/Delphi on a bit larger external display Inside Startup and Shutdown (options) I changed "on VM shutdown" to "close window" so I don't manually have to close the VM after I shut down windows Coming from VMWare I set several sharing and applications settings such that they mostly matched what I was used to Then booted Windows inside Parallels. Installed Delphi 11 Applied the November Patch Coped PAserver22.0.pkg from "C:\Program Files (x86)\Embarcadero\Studio\22.0\PAServer" to a shared folder inside Parallels so I can access it from my Mac Back to the Mac: Ran "PAserver22.0.pkg" to install PAserver Then ran the just installed PAserver-22.0 app (when I run PAserver it tells me that the version is 13.0.12.1) inside the window, pressed enter (thus not using a password), and then pressed "i" to retrieve the IP address needed in Delphi Back to Windows Started Delphi Inside Tools/Options: Connection profile manager, added host, called it MacOS, gave it the IP address found within PAserver. I didn't touch the port number or the password. The connection should then work properly Once the connection is OK then proceeded to SDK manager and installed SDK manager: added the macOS 64-bit (MacOSX 12.0) SDK, telling overwrite existing files SDK manager: also added macOS ARM 64-bit (MacOSX 12.0) SDK SDK manager: iOS device 64-bit (iPhoneOS 15.) SDK SDK's for android 32 and 64 bit along with windows 10 SDK were already installed with Delphi After that I installed all my regular components The above following-order 100% works, at least for me. So far I've compiled 32-bit windows, 64-bit windows, MacOS 64-bit, MacOS ARM!, and iOS apps without any problems. I can also package both Mac apps and iOS apps for Apple's stores! Probably today I'll try compiling for Android. And for who wonders... compilation speeds are totally nuts from my point of view. This thing is real fast. I will be saving time not having to wait as much for compiling, and packaging apps. Not even mentioning waiting for starting MS office apps (build for ARM) on the Mac-side, or running any other program on the Mac side. I ran Pixelmator the other day, did a "super ML resolution" on an image and I was floored on how fast that went. Sick! This was one of the best investments I've made for our company. Hope this helps
  14. Lars Fosdal

    Delphi on Windows 11 on MacBook Pro 16 (2021)

    Getting to know the Mac. The OS is “UNIXish”, so that is pretty easy, but the UI and the keyboard… OMG, it is hard when 30 years of Windows is engraved into your DNA. Shift, fn, control, option, command will take some time to get used to., The multi-touchpad, with clicks, doubleclicks, single, double and triple finger combos... After deciding on Parallels Pro as a VM host, getting the Windows 11 for ARM VM up and running was incredibly easy. I went for four CPUs and 10Gb as the base config. Getting Delphi 11 + November patch installed went flawlessly and pretty quick. Getting PA Server installed also went without a hitch. It took a little while to start Delphi the first time, but after that it was snappy. I created a blank FMX project, but when I try to select the MacOS ARM 64-bit platform, I arrive at Obstacle 1: Delphi fails to import MacOS SDK and asks if I installed the XCode command line tools? I had installed XCode, but since I´ve never used it, it is pretty much a blank sheet to me. Looking at the PA Server console, I found that it ran: > command_line: "/usr/bin/xcodebuild" -version -sdk When I run that in a Terminal, I get an error message: xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance So, Google it is. https://github.com/nodejs/node-gyp/issues/569 lists a solution, suggesting # Install Command Line Tools if you haven't already. xcode-select --install Which fails, suggesting it is installed, and that I should use Software Update to update it. I do. It is up to date. # Enable command line tools sudo xcode-select --switch /Library/Developer/CommandLineTools This does not help. Same error message about the command line tool instance. The third option worked. # Change the path if you installed Xcode somewhere else. sudo xcode-select -s /Applications/Xcode.app/Contents/Developer Yay, I have a MacOS 12 SDK! Even if the import log looks weird. A single Hello World TLabel and Run. Yay! MacOS ARM app running! Lets try something more complex. I open a sample project, switch to MacOS ARM, and compile. dccosxarm64 command line for "FMSimplePhysics.dpr" [dccosxarm64 Error] E2597 ld: library not found for -lFlatBox2DDyn [dccosxarm64 Fatal Error] F2588 Linker error code: 1 ($00000001) Obstacle 2: Now what!? It is probably trivial, but ...
  15. Anders Melander

    Getting Exception stack trace in 2021

    Potato, Phothatho
  16. My application has thousands lines of code. I need a tool which does this automatically.
×