Your comments

Reading https://smartgit.userecho.com/communities/1/topics/1562-word-navigation-ctrlleftright-do-not-stop-before-and-after-every-space I found out that the Preferences > Low-level properties > styledtext.useOwnWordBoundaryDetection = false will use the system default boundary detection, and not only affect ctrl+left/right navigation but also double click selection.

Therefore keeping it true will select snake_case_words indeed, but if you set it to false in order to avoid stopping at the left and right of every space during ctrl+left/right navigation, you will also detect boundaries at underscores, breaking highlight on double-click at underscores (at least in Ubuntu 22.04 x SmartGit 23.1.2).

So I'm still looking for an ideal solution.

Great, it works on Linux Ubuntu / Unity desktop to not stop at spaces, and probably other OSes since they use the same convention in other text editors!

But after more testing I understood why the new boundary detection was added: my system default stops at both hyphens and underscores, which is useful when editing subwords but very slow when navigating across a commit message filled with snake_case variable names.

So to get the best of both worlds, I'd either need:

- more options to decide atomically if hyphen - and underscore _ are boundaries

- commands with customisable shortcuts to navigate to previous/next subword (e.g. ctrl+alt+left, ctrl+alt+right - maybe not great with some window managers where it's mapped to snapping windows left/right, but alt+left/right was already taken - anyway, the defaults could be left empty as long as it's customisable)


That would be for another issue though, the space stop was what was taking me the most time. I'll open another issue for underscores.

Thanks, I see all overridden properties automatically appear there, for the rest I have to type part of the property name (except `smartgit.` to search and set them).

(screenshot after clicking to accept the risks)

Image 838

Excellent, the Force Compare button was still annoying to press every time I was looking at big serialized text files (such as Godot engine .tscn). I wish there was a way to just tell SmartGit to force compare files ending with a certain extension.

Anyway, I added the lines to smartgit.properties, the critical one was the one with `smartgit.text.maxLineLength` in my case (for the quick diff preview at least). Not sure why it's called like that since the message near the Force Compare button mentions overall file size, rather than line length...

Where are those properties documented though? I couldn't find them online. Since there is no UI for them it would help users who need advanced tweaking; and ideally they should eventually get their own UI in Preferences, esp. the major ones like maxLineLength.

Wow, I'm using 22.1.4 now and it seems that double-click selects whole word!

I don't see an option to revert to partial world selection, but it's not issue for me personally as I only exclusively care about copying full symbols.

Can you confirm the behavior change is official? Then you can close the ticket.

EDIT: I also upgraded to Ubuntu 22.04 in the meantime. It's possible it affected selection if SmartGit is relying on OS-level text handling.

Related, there could be an option to navigate per full word instead of subword when using Ctrl+Left/Right in text fields such as the Commit message area

I found a trick using only UI, athough it's not one-step yet:

1. Toggle the PR to show it in the log view

2. Right-click > Reveal commit

3. Double-click or right-click > Check out on the revealed commit (! you must click on the pulls/.../ID badge, not the grayed out text on the right, or it won't work !)

4. You can choose to work read-only for quick testing, or create a branch to keep working on the PR