« first day (1717 days earlier)      last day (1463 days later) » 

12:01 AM
RELOAD!
[rubberduck-vba/Rubberduck] 2 opened issues. 4 issue comments.
[Zomis/Duga] 1 closed issue. 1 issue comment.
 
 
3 hours later…
2:35 AM
@AlexisDuque If you have any questions, don't be shy, ask the pond.
 
 
2 hours later…
@MathieuGuindon You've started spoiling me with autocompletion.
Typed public sub foo( and it took me a good 10 seconds to realize RD needed to have AC turned on.
> Hrm... Somethings not right here. Where's the auto-closing? Wait a minute RD to the rescue.
@IvenBach 'TODO: Clean up home computer registry.
 
 
3 hours later…
7:56 AM
I'm looking at issue4407 Add hotkeys to hover text for discoverability. I've found where the resource files are stored and confirmed editing them shows the edit in the context menu.
I don't know the best course of action to enable the display of the hotkey via tooltip.
AIUI I'd need to create a RefactorContextMenuItem : ContextMenuItemBase or something that parallels the already ReparseCommandMenuItem.
The layers of abstraction loose me in how exactly the resource strings are used.
github.com/rubberduck-vba/Rubberduck/blob/next/Rubberduck.Core/… has a comment WRT adding a shortcut to a new interface command base. Is this a good place to start?
My noodles swimming after working to understand up to this point. Bed time.</iven>
 
8:32 AM
should I implement a template withing the class definition or outside of it?
 
 
3 hours later…
11:36 AM
> Considering that the hotkeys are customizable, we'll need to have a mechanism for displaying it apart from the content of the hover text.

We can borrow the idea from Office ribbon:
![image](https://user-images.githubusercontent.com/2367644/52912235-24698100-3274-11e9-9b5b-db34aa36357b.png)

Note how that it has 3 text areas for the tooltips. But in our case I don't think we need 3; only 2:

```
{tool tip text}
--------------------------
{hot key shortcut}
```

A possible starting
 
@IvenBach Left a comment on the issue with some ideas. Hopefully that helps.
@Aurelius Hi! Can you explain more about what you want to do? I would prefer that we start to use more and more templates but it is also in need of implementation -- see here
 
 
3 hours later…
2:19 PM
@this thanks yes
in template definitions
is there any advantage in defining mehtods outside the class definition?
(i.e. using the scope operator?)
Since templates are inline by definition and we are forced to put the implementation together with the definition I can't see any advantage
but only disadvantages
 
2:57 PM
> Solution!
I figured out what I was doing wrong. in the VBE Add-In Manager, I didn't check the Loaded/Unloaded Checkbox. As soon as I did that, Rubberduck appeared in all its glory!
This is a suggestion for others having a similar problem: check the VBE Add-In manager.
 
3:49 PM
@Aurelius I'm not sure I follow what you are doing. While it is true that right now, the only template is a complete class definition, I do not expect it be only that - it eventually needs to support code snippets that can be then inserted into an existing module. In fact that will be required once we refactor the test module/methods, which are currently hard-coded within C# files.
The template architecture is meant to enable some level of customization, for both within RD's internal needs and for users' need.
Can you provide a specific example of what you are trying to do?
 
> Great I'm glad you found it. For others' reference; we also have an [wiki article](https://github.com/rubberduck-vba/Rubberduck/wiki/Troubleshooting-and-reporting-an-issue) on troubleshooting.

Note that the hosts may automatically disable the add-ins, especially after a crash. It's meant to allow you back in even when an add-in misbehave, but sometime the *host* crashes and mistakenly blame the addin, so it's necessary to check the addin manager in such situations.
 
@this @Comintern I realized that may require us to solve the problem that prevents us from using other UserControl - like that number picker that Mat made; he ended up having to inline the definition because it would not bind otherwise. Inlining the tooltip customization would be a bit hairy...
 
4:41 PM
If I search all declaration for the selected declaration passing in the selection of a declaration, I should get back the declaration, right?
 
4:57 PM
Hi guys
Because it is written "Na&vigate" and it is not written "Navigate" in the key CodeExplorer_Navigate
 
& is an accelator key
meaning that if you press alt + v, it will execute the command.
Therefore in the spanish translated version, you need to have the equivalent with the same letter, if possible
 
letter N?
 
in this case, no, that is letter v
the spanish word does not have v?
Na&vegar?
 
Navigate = Navegar
 
Right, so in that case we keep the same shortcut if possible
If the word does not have the same letter, then you'll have to come up with a different shortcut but you have to be sure it will not conflict with other shortcuts.
 
5:07 PM
It is placed to the left of the letter that I want as a shortcut
 
Yes
 
Na&vegar
Ok
 
Exactly.
Also FYI - Because it is... should be why is it...
 
@M.Doerner I only had a brief look at the finder on GH and it looks like the finder does not take a selection; the closest seems to be this. This looks it will take the selection as the test is ContainsFirstCharacter.
(I have to say GH is not that great for finding methods.)
Anyway, I figure that as long the test is using that method, it will work out.
 
5:18 PM
I am not talking about using the finder.
The thing finding the declaration is the following from the RenameModel.
target = declarationFinder.AllUserDeclarations
                .FirstOrDefault(item => item.IsSelected(selection) || item.References.Any(r => r.IsSelected(selection)));
I just had a look where IsSelected is coming from.
Why on earth has the Declaration class such a member?
 
well we did want to kill the declaration extensions, didn't we?
 
In my opinion, it should not be concerned at all with concerns realting to the code panes.
That is not an extension.
 
I realized that too late - I really shouldn't be using GH to search
 
Anyway, only the declaration extensions and the RenameModel use it.
Everything else uses something different.
 
I'd think those need to be moved over to the declaration finder, no?
 
5:27 PM
There actually is a method for this on the finder.
Hm, it does something slightly different, though.
OK, the RenameModel should be able to simply use FindSelectedDeclaration.
 
the less variations we have, the better.
 
Thinking a bit more about it, I would like to revert myprevious position on IsSelected.
Instead of removing that, the declaration finder should actually use it in FindSelectedDeclaration instead of reimplementing it.
 
5:52 PM
Hm, under which condition we deem a declaration or reference selected is not very intuitive.
In foo =[ bar], with [] representing the selection, bar is not selected; in foo = ba[r] it is; in [foo = bar] only foo is selected.
I think the contidion selection is contained in declaration selection or declaration selection in selection would be more appropriate. However, then we would still have to determine which or the potentially multiple matches is the main selected one.
 
6:11 PM
Hi pond
I have found new accelerator keys
But there is no coincidence with the word in Spanish
&
Find = Buscar
&Find all references... = Buscar todas las re&ferencias... ?
 
Hi
Do you have a VBE with spanish language settings?
Oh, never mind, these references are the other kind of references.
It basically means find all uses.
 
But I can write "&" to the left of the shortcut letter
 
I suppose that if your spanish VBE uses ctrl + B for Buscar, then you should use &Buscar. It should be intuitive.
 
or does it still use ctrl + F for the native find dialog?
 
6:22 PM
I have no idea how this accelerator key stuff works.
 
With accelator, you use alt instead of ctrl
 
ctrl
Algunas aplicaciones lo hacen
Some applications do it
 
Hmm I see.
let me test
 
I can leave "Ctrl + f", so as not to modify the shortcuts
 
I just tested - it looks like i have to do a sequence of shortcuts
so to use the Find All References, I must do the following:
hold down the alt, then type B (for Rub&berduck), then v (for Na&vigate), then finally f for (&Find All References)
for each letter I type, the menu will open.
 
6:28 PM
@this I think I have an idea why R# tends to see the wrong C# version with default. I guess it only looks in the csproj file for the individual project. However, we set the language version in the base csproj file that gets imported.
 
and the letter will be underlined, so it's best that you underline what you can see - since your word is Buscar, I would probably elect for &Buscar todo referencias
 
or &Find all references... = Buscar todas las re&ferencias...
 
That'd work, and would mean you keep the same shortcut for those who are bilingual, I guess?
Honestly I haven't really thought that much about the translation issues.... This is all new to me.
@M.Doerner hmm. If it's assuming the default just because the csproj file doesn't have it, then, I'd have to presume the default is set somewhere else at the solution level or at the VS level, no?
it can't possibly be just coming up with 7.0 randomly.
 
@this This is my first translation and they are details that make you think. That's why I consult them before modifying them
 
It might just be the default when c# 7.0 features for R# are not disabled.
 
6:32 PM
@AlexisDuque Agreed. @M.Doerner / @Vogel612 / @MathieuGuindon any insights RE: alt keys? I have no idea how it behave between languages and whether to keep the same letters, etc.
 
As I said already, I have no ide.
 
@M.Doerner from what I saw in the help it seemed to be a project level setting for R# which would make it very tedious and require us to include it in the git, which Mat probably won't want.
A quick google seems to suggest this is a common problem others have, not just with R#
 
It might be that respecting an included base project file might come in one of the future updates to R#.
The new project file format is still rather new.
 
Yes, I think that's more likely.
I suppose an interim solution is to post the R# setting file for all project somewhere, so it can be manually deployed for others who find it annoying.
 
6:48 PM
@this Reading your links.
 
 
5 hours later…
11:29 PM
@this You probably wouldn't need to inline them - an attached behavior would probably be the direction that I'd go. If you injected a hotkey settings provider into the behavior, all you should have to do is write one implementation and then attach it where it's needed.
 
11:41 PM
Ok. figured that since they had TooltipService it made sense to use what was builtin but what do I know.
That also means IvenBach will need to learn how to implement a behavior.
 
I think the main problem would keeping it in sync with with the settings like you pointed out. The other problem is that the tooltips are a mix of WinForms and WPF.
Whatever it is will need 2 adaptors - that's what inclines me to lean away from pure WPF services.
 
Ah I see what you mean.
and also the problem with inheriting the same behavior in other XAML, too. W/ behavior, you just add a node, done, right?
 
Hi pond
 
Hi!
 
^
@this Pretty much.
 
11:48 PM
I have finished translating
 
All 20+ files?
 
Wow, that was quick!
 
What the ResXManager showed me
 
@AlexisDuque ping @MathieuGuindon
Ok, so, I think there's one more thing you need to do...
and that's to enable the language in RD itself
again, I never did that myself so others may need to correct me but -
 
11:50 PM
How can I test the interface?
 
I believe you need to add a line here:
I assume it needs to be new DisplayLanguageSetting("es-ES")
(not sure if that is correct code for the culture)
there should be one more place.... let me see...
 
Huzzah!
 
@MathieuGuindon care to help me out - I know there's 2 places but not sure about the 2nd?
 
@AlexisDuque did you notice there was a resource key for each language? You need to add one for Spanish - these keys are used for populating the language dropdown in the settings dialog
@this IIRC that's all - just the language key and the language list source in the settings VM
 
Ok for some reason I htought there was 2 places in C# source code where that was hard-coded.
Oh shoot. I forgot the installer.
that won't show up in the resx manager....
(see, why we need a wiki... ;-) )
 
11:56 PM
yeah...
^ here's the list of languages in the VM
 
OK, so we need to create a custom message for the installer -- luckily there are not too many.
 
@AlexisDuque did you commit your changes to git?
 
you can see examples of that here: github.com/rubberduck-vba/Rubberduck/tree/…
 
If not, that's the next step
@this oooh forgot about the installer stuff
 
you would create a Spanish.CustomMessages.iss file, similar to what you see in other languages. Then in the installer, add 2 more lines:
The 2nd line should be #include <Spanish.CustomMessages.iss>
The first line should be Name: "Spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
 

« first day (1717 days earlier)      last day (1463 days later) »