2009-06-05 4 views
3

Visual Studio 2008 솔루션의 리팩토링에 유용한 도구를 아는 사람이 있습니까?C# : 리소스 파일 리팩토링

응용 프로그램의 현지화에 사용되는 어셈블리에 번역 된 텍스트가있는 여러 리소스 파일이 있습니다. 그러나 그들은 약간 지저분 해졌습니다 ... 나는 몇몇 키의 이름을 바꾸고 다른 것들로 옮길 것입니다. 그리고 이러한 변경 사항을 내 코드와 번역 된 버전의 리소스 파일에서도 수행하고 싶습니다. 어쩌면 어떤 문자열이 번역 된 버전에서 누락되어 있는지, 어떤 문자열이 원본에서도 제거되었는지 ...

아무도 좋은 시각적 스튜디오 확장 또는이 기능을 지원하는 ReSharper 플러그인을 알고 있습니까? ? 지금은 기본 리소스 파일에서 키의 이름을 바꿔야하므로 현지화 된 버전에서 통증이 생깁니다. 그리고 지금 다른 이름을 가진 키로 인한 모든 컴파일 오류를 얻은 다음 컴파일하고 모두 수정하십시오. 매우 성가신 =/

+0

나는 이러한 것들을 대부분 수행한다고 주장하는 http://safedevelop.com/Products/RGreatEx를 잠깐 살펴 봤지만 제대로 작동하지 않습니다. 문자열을 리소스 파일로 옮긴 후 ReSharper가 충돌하고 이름 바꾸기 대화 상자가 나타나지 않습니다. 한 파일에서 다른 파일로 리소스를 이동할 수 있는지 확실하지 않은 경우 ... – Svish

답변

0

에 도움이 ReSharper에서 5에서 몇 가지 새로운 기능이 될 것 같습니다

Localizing your Applications with ReSharper 5

이 데모 은 ReSharper에서 5 일반 작업 흐름을 깨지 않고, 신속 지역화 코드에서 문자열을하는 데 도움을주는 방법을 보여줍니다. 리소스 파일 작업 더 이상 난 그냥 여기 Moving and renaming resource keys in a .resx file이 문제에 사용하는 것에 대해 블로그에 저를 묻는 메시지가이 질문을 우연히 발견 ReSharper에서 5

+0

Resharper 6. 지역화를위한 더 많은 기능 제공 http://www.jetbrains.com/resharper/webhelp/Resources__Index.html –

0

RGreatEx는 많은 이동이 필요할 때 적합합니다. 코드의 문자열을 리소스에 전달합니다. 그러나이 경우에는 도움이되지 않습니다.
는 이러한 플러그인 (*이 나는 그런 본 적이과 구글에 발견되지 않았 음을 의미하지만, 새로운 언어로 번역하는 데 도움이되는 몇 가지 localizators있다 - http://www.peoplewords.com/download/ResxEditor.aspxhttp://sourceforge.net/projects/resx/http://www.resx-localization-studio.net/http://madskristensen.net/post/A-NET-resource-editor-application-for-resx-files.aspx가) 있습니다. 그러나 당신은 쉽게 그것없이 이것을 할 수 있습니다.
당신이 오직 필요로하는 것은 몇몇 선정한 resx 파일을위한 선정 된 언어를위한 끈의 일반적인 사전을 생성하고 어딘가에서 저장할 몇몇 작은 공구를 쓰기위한 것이다. 또 다른 도구는 변경된 resx를 템플릿으로 사용하고 이전 도구로 생성 된 사전을 사용하여 새 resx 파일을 생성하는 도구입니다 (변경 후).
물론 새로운 문자열과 변경된 문자열은 모두 누락되지만 수동으로 수정할 수 있습니다. 이렇게 많은 시간이 걸리지 않습니다 (특히 새로운 resx 생성 중에 누락 된 문자열의 로그를 작성하는 기능을 추가 할 때).

0

은 우리의 소프트웨어를 현지화 Sisulizer으로 찾고, 나는 당신이 요구하는지 달성 생각 (과잉 아마 조금?)

1

와 개발자의 악몽이 없다.

두 개의 PowerShell 스크립트가 있습니다. 하나는 리소스 키의 이름을 바꾸고 다른 하나는 리소스 파일을 다른 리소스 파일로 옮기는 스크립트입니다.

.\RenameResource.ps1 oldKey newKey 

내가 "ResourceFile1.resx"을 "ResourceFile2라는 이름의 파일에서 키"키 이름 "으로 리소스를 이동할 수 있습니다 : 나는 자원 키의 이름을 바꿀 수 있어요 이러한 스크립트를 사용

.resx ":

.\MoveResource.ps1 ResourceFile1 ResourceFile2 keyName