-
Notifications
You must be signed in to change notification settings - Fork 8.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move the commandline args to their own project #8841
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just two minor things.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tried to look over the vcxproj. Still consider me somewhat of a newbie for reviewing those files though so only like 50% confident on that stuff haha.
<ProjectReference Include="$(OpenConsoleDir)src\cascadia\WinRTUtils\WinRTUtils.vcxproj"> | ||
<Project>{CA5CAD1A-039A-4929-BA2A-8BEB2E4106FE}</Project> | ||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly> | ||
</ProjectReference> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wait... you might be able to get rid of WinRTUtils no? I don't think you're using the macros.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wait shoot I am. AppCommandlineArgs uses RS_A
to get the descriptions for args. That'll inevitably explode when I try doing this.
@DHowett do you have any clever ideas for a way around this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
G A H
Yep this will crash immediately. I'll work on some more clever solutions in the morning.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, the Terrible solution I have is to have a .../CommandlineArgs/Resources/en-us/Resources.resw
, and include it manually in each of TSE and TerminalApp
. That'll get the resources added to the correct libraries, so RS_A
will still work, regardless of which dll it's being called from.
@DHowett Will that still work for localization?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that it will require both key instances to be localized separately? I'm not 100% sure actually. It's by file path actually . . . so maybe it actually DOES work ...
@msftbot make sure @DHowett signs off on this |
Hello @zadjii-msft! Because you've given me some instructions on how to help merge this pull request, I'll be modifying my merge approach. Here's how I understand your requirements for merging this pull request:
If this doesn't seem right to you, you can tell me to cancel these instructions and use the auto-merge policy that has been configured for this repository. Try telling me "forget everything I just told you". |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approving, because I don't really have anything else to add here. Should we hold off on merging this until after v1.6, to reduce loc burden? I'll let you figure that out haha
We will not merge this for 1.6. 😄 |
@zadjii-msft - if we put it as a dependency for settings, then I can move the validation logic from |
Interesting. That's certainly an idea. We'd still have to have the resources in both TSM and TerminalApp, (instead of TSE and TerminalApp as the PR currently is), right? |
I guess so 😿 |
<!-- Make sure to include the CommandlineArgs resources here, so they show up in our scope --> | ||
<PRIResource Include="$(OpenConsoleDir)src\cascadia\CommandlineArgs\Resources\en-US\Resources.resw"> | ||
<SubType>Designer</SubType> | ||
</PRIResource> | ||
<OCResourceDirectory Include="Resources" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you'll need to add a recursive resource directory using OCResourceDirectory that points to CommandlineArgs, otherwise we will only ever get the english ones. OCRes is the way that the language-named directories get pulled in. 😄
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Notes from review -- won't work with loc
This pull request has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for 7 days. It will be closed if no further activity occurs within 7 days of this comment. |
Cool it, bot. (will it listen to me..) |
Yea, it listened Spoke with Dustin, I'm gonna try the OCResource thing that we're doing in CascadiaPackage.wapproj. I'll need to put it in the consuming projects (TSE, TA). That might just work? |
@check-spelling-bot ReportUnrecognized words, please review:
Previously acknowledged words that are now absentapos aspnet bc boostorg ci conpixels cplinfo crt cw cx dahall df dh dw eb EK ev exeuwp fde fea fmtlib gb gh Gravell's hc hh hk hu isocpp Kd KF KJ KU KX lk mintty Nc NVDA Nx oa OI Oj Oo oq Ou Ov pb pinam pv pw px py qi QJ qo QOL ri Rl rmdir ru smalllogo splashscreen storelogo sx sy sz td tf tl tt uk ul unte vcrt vf vk wx xa xamarin xy Yw yx YZ Zc zd zh ZM zu zySome files were were automatically ignoredThese sample patterns would exclude them:
You should consider excluding directory paths (e.g. You should consider adding them to:
File matching is via Perl regular expressions. To check these files, more of their words need to be in the dictionary than not. You can use To accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the [email protected]:microsoft/terminal.git repository
|
/notes from chat, because I obviously won't be able to ever find them again |
You know, I honestly don't think I'm coming back to this any time soon. I'm gonna close this to clean up the queue. |
Summary of the Pull Request
We need the commandline parser available in
TerminalSettingsEditor
, for #8812. This PR pulls it out ofTerminalApp
and into it's own lib, and hooks TSE up to reference that lib. This allows the TSE project to create an instance of the arg parser, so it can validate the commands itself.I originally did this for projects/5, but I didn't end up needing it.
I did not actually do any validation other than "will it build?"
PR Checklist