Hello. I would like to modify the text-editing UI in Pharo to add some affordances I’m accustomed to from MacOS. Specifically, right now command(a.k.a. meta)-left/right-arrow moves one word left/right in Pharo, whereas on MacOS this is done with the option(a.k.a. alt)-key, and command-left/right-arrow moves to the start/end of the current visual line. Another MacOS convention I use a lot and would like in Pharo is triple-click to select a whole paragraph. And if I can implement that, I would also like to disable the corresponding Pharo convention (double click at the start or end of the paragraph).
Some smaller things that I’m also not used to: When moving the text cursor one word at a time, Pharo treats white space as words, whereas MacOS skips over white space. Conversely, when double-clicking to select a whole word, MacOS treats white space between words like a word, whereas Pharo selects the adjacent word. So anyway, I’m wondering what I would have to modify to customize these UI conventions. I didn’t see anything relevant in the settings browser. (There was a "Skip over white space” option under "Text Editing," but it didn’t affect how the move-cursor-one-word-at-a-time keystrokes work, so I don’t know what it does.) Does anyone have any pointers on where these behaviors are encoded in the system? Or if someone has already posted a package for customizing this sort of thing? Alex Landraitis |
Hello Alex
For the tripple-click I do not know. Now if you want to try use the headless vm (because we are introducing SDL20 as a backend to capture event and expose them to the user so you will be able to get all the events from the OS and not some as it was previously the case) and ask. Using SDL20 we were able to implement several gesture recognition in the past.
At some point we want to have move to the end of the next word. :)
Check the keymapper. And what you should know is that we are not happy with the text editor (Rubric was never made to stay).
-------------------------------------------- Stéphane Ducasse 03 59 35 87 52 Assistant: Aurore Dalle FAX 03 59 57 78 50 TEL 03 59 35 86 16 S. Ducasse - Inria 40, avenue Halley, Parc Scientifique de la Haute Borne, Bât.A, Park Plaza Villeneuve d'Ascq 59650 France |
It might be best to have this be configurable/customizable for each user
(which is what I think you're getting at). The question is what should the default "out of the box" behavior be? There are conventions, although they're not exactly "standardized" (as they should be). Most of us have "muscle memory" for many of these operations: Go forward one word, select a paragraph, expectations of where the cursor will be when you go forward/backward word-by-word, etc. and I don't think anyone enjoys having to learn a different way for every tool they use. So the default probably should follow the most common conventions, while still allowing a fairly easy way to change it to suit each user. The best approach might be to have the default adapt itself automatically to the platform the VM is running on, so that Windows users get Windows conventions, Mac users get Mac conventions, Linux users get Linux conventions. -t -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html |
+1 - platform specific defaults. Also, is there any document anyone can point me to on why Pharo is not viable for iOS? I have an iPad Pro and I'd LOVE to be able to code/test and run my apps when I travel... my old MacBookPro is getting long-in-the-tooth. On Sun, Aug 2, 2020 at 1:01 PM tbrunz <[hidden email]> wrote: It might be best to have this be configurable/customizable for each user Russ Whaley [hidden email] |
Not exactly the answer you're looking for, but...
Take a look at the latest Chromebooks. They are *awesome*. Beats iPads & iOS! There are "tablet" Chromebooks (the keyboard folds all the way underneath the touchscreen, and is de-activated), as well as keyboard-detachable models, as well as "clamshell" ultrabook models. Otherwise, you have a tablet with a sensible way to type on; many models have touchscreens anyway. (Mine does, and I variously use the touchscreen, the touchpad, and the arrow keys to scroll content.) Here's the home run: You can enable "Linux containers" on newer Chromebooks, and then you can install *any* Linux app in the container. Yes, including Pharo Launcher. So you can run Pharo images on Chromebooks, and of course program on your Chromebook tablets in Pharo. Save your iPads for watching YouTube.. (Watch your YouTube Pharo tutorials while you program Pharo on your Chromebook. :^) -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html |
Look at the keyboard -- that's a Chromebook, not a WinTel or Linux laptop.
<http://forum.world.st/file/t372161/Pharo-on-Chromebook_2019-0127.jpg> That was about a year & a half ago. -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html |
In reply to this post by tbrunz
Yes, I played with my daughter's chromebook - was considering doing just what you're suggesting - a few weeks later it died - well not completely - but is finicky enough that she can't use it for her masters work any longer (too unreliable) - so she went back to a 2013 MacBookPro... (they just work). I recently bought a new iPad Pro - so after that investment, I'd really like to stick with it :) I do some drone piloting, guitar playing through my new Spark amp by positiveGrid... and the iPad is the right tool for me. I could have gone android - but I tired of the constant - which app / device supports which candy-of-the-month... hehe, I digress. Mostly, I just want one device that does it all... I could buy a MacBookPro or Air or whatever, but that doesn't work with my drone... I know, I know... first world problems. Thanks for the reminder on the Chromebook. Who knows, I may be back to that in a few months. On Sun, Aug 2, 2020 at 4:20 PM tbrunz <[hidden email]> wrote: Not exactly the answer you're looking for, but... Russ Whaley [hidden email] |
In reply to this post by tbrunz
:) indeed it is On Sun, Aug 2, 2020 at 4:27 PM tbrunz <[hidden email]> wrote: Look at the keyboard -- that's a Chromebook, not a WinTel or Linux laptop. Russ Whaley [hidden email] |
In reply to this post by Russ Whaley
Of course, ask a half-dozen people about this subject and you'll get 6
different responses... Between myself, my wife, my daughter, family, friends, we've had at least 8 CBs. None have failed. My wife is still using (and loving) the 2015 Pixel LS CB I got 5 years ago. Not even the battery has degraded. My daughter used one CB for her entire undergrad program. (I offered to get her a "real laptop" before she started as a Freshman, but she insisted she wanted a CB). The only thing I needed to do was add Eclipse and the Java JDK to it for one of her classes. (The programming nerds in her class were impressed that she was developing Java on a CB.) For graduation, I upgraded her to a Pixelbook CB. I rebuilt her original CB with GalliumOS -- a Linux distro optimized to run CB hardware. It's still running... Chromebooks run Android, Linux, Chrome apps, Windows apps... All except Mac apps. First-world problems indeed... And mostly a religious issue. I'm fine if you use Apple products. But I haven't a solution to suggest in that case! For the record, I have a Pixelbook (the photo), but I also have a DIY tower and a Dell 7710. The CB gives me portability + Pharo. (If you do go back to a CB, just be sure you check the specs: Intel CPU only, and be sure it can run "Crostini" so you get Linux containers.) -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html |
Wow! Nice to know there are success stories like yours. When we were having issues and trying to determine which way we should go to, we just couldn’t find good answers on the CB side. Perhaps we should give it another go! On Sun, Aug 2, 2020 at 5:34 PM tbrunz <[hidden email]> wrote: Of course, ask a half-dozen people about this subject and you'll get 6 Russ Whaley [hidden email] |
If you do, send me a message about what you're considering, and I can help
you choose. I'm much more knowledgeable about CBs that the average person -- especially about programming on them & using Linux on them. Another nice thing about Chromebooks is that they're inexpensive. Meaning, you get a lot for the price. They used to all be fairly low-performance "budget" devices, but they've been catching on, and now pretty much all the manufacturers make a variety of models. What's really interesting are the "power user" models. Google started the trend by selling the "Pixel" model to attendees of their "Google I/O" conferences, starting in 2013. They did it again in 2015. Both have touchscreens -- they were the only ones at the time with T/S. The 2015 model was available as an i5/8GB/32GB (cpu/ram/ssd -- they don't have a lot of disk space because you're encouraged to save things in "the cloud"; you get a lot of free Google Drive space as part of buying a CB). Then there was the "LS" (Ludicrous Speed) model that's an i7/16GB/64GB. (The CPU is a dual-core Broadwell mobile with HT enabled -- it's no slouch.) The hardware, for the time, was second-to-none. It was Google's way of showing the world, "Look what you can do!" as well as a perk for power users. Now many of the mfgrs have high-end models, many of which are really nice systems. And for "content consumption", they're just as much an "appliance" as iPads. Turn them on & go... You can't break them. Perfect for "the parents" or anyone who's not tech-savvy. But unlike iPad devices, you can conveniently create content, such as emails, etc. So the 2015 Pixel was too much for me to pass up... I didn't go to Google I/O, but you can always count on a percentage of recipients to flip them on eBay. Which they did, so I bought one. It's been a good value, and the hardware really is top-notch. Of course I wasted no time in learning how to run Linux apps on them. First was "Crouton", a side project of a Google engineer. That gave way to "Crostini", an official Google project to add Linux, but in a container -- and a supported feature. (Like many things Google, it's "in beta", but it works well, so 'who cares?') My wife got the 2015 Pixel LS when I got the base model of the Pixelbook (i7/8GB/128GB) when it came out a couple of years ago -- Google gave them more SSD so you can add your Linux development environments. So I added all my Ubuntu tools, and Pharo Launcher, and my images... Everything works, including file & network access. (Linux containers share a directory with the ChromeOS file system that's visible from the Chrome environment.) The only thing I needed to do was write a bash script that will enlarge the cursor (because the Pixel/Pixelbook screens are hi-dpi, like my 7710) and set the font size in my images to "Large". That script is here: https://github.com/tbrunz/pharo-support -t -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html |
Free forum by Nabble | Edit this page |