> On May 15, 2015, 9:31 p.m., Martin Gräßlin wrote:
> > thanks for rebasing!
> > 
> > I just had a look at the bug report and have to agree with comment #1: I do 
> > from time to time copy on purpose whitespaces (yes I'm weird). I also tend 
> > to copy newlines and I do want to have them in the history. If I understand 
> > your commit description correctly this "feature" would break.
> > 
> > Given that I think we need more input on whether we want to break that 
> > feature or whether we want to create a config option for it.
> 
> Patrick Eigensatz wrote:
>     Hi Martin!
>     
>     Yes, this "feature" would break. However, if you copy more than one 
> whitespace sequence you won't be able to identify them in the klipper menu.
>     But your concerns are right. I could try to implement an option for this, 
> although I've never done this before and I would surely need some 
> assistance...
> 
> Kai Uwe Broulik wrote:
>     I also sometimes copy whitespace but then I immediately paste it in, so I 
> wouldn't need it in the history, its representation in the history could 
> probably be improved, if so desired. Perhaps add the usability group to this 
> review request so they can have a look at this.
> 
> Thomas Lübking wrote:
>     I usually copy whitespaces and newlines w/ the primary selection buffer 
> (for RMB) to click and paste commands when there's no WM ;-)
>     
>     As for distinguishing entries in the history, whitespaces could be 
> replaces w/ something printable like "·" or "?" resp. "?"?
>     Maybe in a different color to hint that this is a placeholder?
> 
> Patrick Eigensatz wrote:
>     I think the idea of (colored) placeholders is great! I've started to 
> create an option in the configuration dialog, we could add an option for 
> whitespace placeholders, too.
> 
> Thomas Pfeiffer wrote:
>     This is indeed one of the cases where having something configurable is a 
> good idea. While hardly any "regular user" is likely to want to copy only 
> whitespace, apparently this is an important feature for developers, so it 
> should not be taken from them.
>     
>     It should be turned off by default, however, because presumably 
> developers are more likely to hunt for the option to turn it on than regular 
> users are to hunt for the option to turn it off.
>     
>     As for making whitespace placeholders configurable: That is too much. 
> Either it is useful to have placeholders or it isn't, there isn't one group 
> of people for whom it is useful and another for whom it isn't. Since the main 
> usecase for copying only whitespace is in coding, where the actual number of 
> whitespace characters often is relevant, it appears to make sense to have 
> placeholders.
>     I would not use a printable character as a placeholder, though, because 
> then it won't be distinguishable from the actual character. Can't we maybe 
> just use a different color for the whitespaces (but only in cases where there 
> are only whitespaces)?
> 
> Kai Uwe Broulik wrote:
>     We could enable styledText for such cases and then use arbitrary html 
> formatting for colors. However, I think there are even Unicode characters 
> that look like blocks with "TAB" and similar written in them.
> 
> Thomas Pfeiffer wrote:
>     I'm fine with anything that isn't a regular character.
> 
> Patrick Eigensatz wrote:
>     I remember there is a programming language called "Whitespace" only 
> consisting of space/tab/newline. Whitespace IDEs highlight those chars 
> somehow. I think we might change the background color of a char, for example 
> spaces are "marked" green and so on... (Using HTML formatting? I'm not sure 
> what is possible here...) (The point to do this *only* where there are only 
> whitespaces is important!)
>     
>     I'm currently trying to develop the configuration setting "Ignore 
> whitespace characters" to but I'm new to Qt and KDE development in general.
> 
> Thomas Pfeiffer wrote:
>     I'd call it "Ignore selections that contain only whitespace", because 
> we're not ignoring whitespaces completely.
> 
> Thomas Lübking wrote:
>     > I'm fine with anything that isn't a regular character.
>     
>     Oh, cool - RB screwed it.
>     
>     Run kcharselect and select "Symbole" and "Symbole für Steuerzeichen" 
> (anybody around not german? =)
>     There're special glyphs for non-printable characters. I added them to my 
> former post, but RB apparently replaced them w/ nothing :-(
>     
>     eg. U+2424 (newline) and U+2420 (space)
> 
> Patrick Eigensatz wrote:
>     You're right on this one! ;-)
> 
> Thomas Pfeiffer wrote:
>     Okay, Patrick (or anyone else who can run Master), I'd like you to do 
> something called "guerilla usability testing": Once the placeholder feature 
> has been implemented, please do the following:
>     Take a machine with Klipper open and a line with the placeholders in it 
> to a few people who
>     - are used to coding or writing a markup language
>     - ideally are at least somewhat familiar with Klipper
>     - are not not involved in this review request
>     and ask them what they think they see there.
>     If all of them at least _guess_ it's whitespace, we've won. If some of 
> them think it's something else, we have to go back to the drawing board.
>     Unicode actually gives us a few options here. In addition to the 
> characters Thomas mentioned, we also have U+2423 (open box, graphic for 
> space) and U+2422 (blank symbol, graphic for space). And if all of those 
> fail, we can still try colors.
>     
>     Could you do that? We don't want to introduce something which only we 
> think works, so this would be really helpful. It's also interesting/fun to do 
> and doesn't cost much time.
>     Thanks!
> 
> Patrick Eigensatz wrote:
>     Hi Thomas!
>     
>     Indeed! The test seems to be fun! U+2423 seems almost perfect for spaces!
>     But as I told you, I'm new to Qt and I'm new to KDE development and I'm 
> not sure
>     if I can write all this code alone, but I hope to do so...
> 
> Patrick Eigensatz wrote:
>     I already run into some troubles reading the code. Inside the *Klipper* 
> class, there seems to be the method *loadSettings()* respectively 
> *saveSettings()*.
>     They use functions from a namespace called *KlipperSettings*. But this 
> namespace is nowhere defined. Often, a file called "klippersettings.h" is 
> included,
>     but in this git commit, this file does not exist...
>     
>     Thank you for your help :)
> 
> Jeremy Whiting wrote:
>     Patrick,
>     
>     First off, welcome to the community! To answer your question though, the 
> klippersettings.h and it's matching .cpp file are autogenerated files from 
> the .kcfg file. More information can  be found here: 
> https://techbase.kde.org/Development/Tutorials/Using_KConfig_XT You should be 
> able to find them in your build folder somewhere.
> 
> Heiko Tietze wrote:
>     One option to show those charcters in dialogs is to use the regular 
> expression \t (tab), \n (new line), and space as it. That's what Kate does at 
> replace > 'escape sequences'.
>     
>     Kate and similar text editors show tabs by this 'much greater than' 
> symbol ? (U+226B) in documents. No idea how Kate handles newline and spaces 
> but Libreoffice, for instance, takes the usual pilcrow symbol (U+00B6) 
> http://en.wikipedia.org/wiki/Pilcrow and a 'middle dot' U+00B7 for spaces 
> (Wikipedia knows more subsitutes 
> http://en.wikipedia.org/w/index.php?title=Whitespace_character&action=view&section=4#Substitutes).
>  Libreoffice applys an arrow for tabs, guess it's the 'halfwidth righwards 
> arrow' U+FFEB (it's rather U+21E5 ? rightwards arrow to bar 
> http://en.wikipedia.org/wiki/Tab_key#Unicode). Calligra might draw the arrow 
> since its length depends on the tab width.
>     
>     Another option is to show the html/xml equivalents 	 
   
> which would be useful for people who regularly deal with that type of 
> representation. 
>     
>     To summarize RegEx and HTML are good for developers, visual replacements 
> for people who are familiar with office suites. But unfortunately I do not 
> have a favorite here, all have advantages and disadvantages. And clutter the 
> tool with options makes no sense to me. However if you want to offer the 
> option to show the whitespaces this selection could include the way it is 
> represented (a menu with none, html style, regex style, office style).
>     
>     Last but not least I want to point out that there are much more 
> non-printable characters. E.g. Arab has a couple of zero width white spaces. 
> It could be a use case to type the letters first and add those spacers later. 
> I'm pretty sure we will miss something.

html and regex have the disadvantage that one cannot know what one has now. 
What's the difference between I copied "\n" and I copied a newline? It's 
visually difficult to destinguish. Given that I think (U+00B6) and friends are 
the better solution for representing them visually.


- Martin


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/123806/#review80423
-----------------------------------------------------------


On May 15, 2015, 9:42 p.m., Patrick Eigensatz wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/123806/
> -----------------------------------------------------------
> 
> (Updated May 15, 2015, 9:42 p.m.)
> 
> 
> Review request for kde-workspace, KDE Usability and Patrick Eigensatz.
> 
> 
> Bugs: 192922
>     https://bugs.kde.org/show_bug.cgi?id=192922
> 
> 
> Repository: plasma-workspace
> 
> 
> Description
> -------
> 
> [PATCH] plasma-workspace: klipper: Fix #192922 Ignore blank entries
> 
> QString::isEmpty() is used to check if the string only consists of whitespace 
> characters. If it does, the creation of the HistoryStringItem fails.
> 
> 
> Diffs
> -----
> 
>   klipper/historyitem.cpp 36cbe61 
> 
> Diff: https://git.reviewboard.kde.org/r/123806/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Patrick Eigensatz
> 
>

Reply via email to