From 1cc104909a30a73ee08c998651ea3ba1f9f85752 Mon Sep 17 00:00:00 2001 From: freshlhy Date: Mon, 31 Mar 2014 07:41:21 -0700 Subject: [PATCH 1/3] Change the Format File in Focus command interactive style to eclipse code format way --- ClangFormat/TRVSFormatter.m | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/ClangFormat/TRVSFormatter.m b/ClangFormat/TRVSFormatter.m index 708bf35..02b13ae 100644 --- a/ClangFormat/TRVSFormatter.m +++ b/ClangFormat/TRVSFormatter.m @@ -106,6 +106,8 @@ - (void)formatDocument:(IDESourceCodeDocument *)document { - (void)formatRanges:(NSArray *)ranges inDocument:(IDESourceCodeDocument *)document { DVTSourceTextStorage *textStorage = [document textStorage]; + + NSRange originSelectedRange = [[TRVSXcode textView] selectedRange]; NSArray *lineRanges = [self lineRangesOfCharacterRanges:ranges usingTextStorage:textStorage]; @@ -118,13 +120,12 @@ - (void)formatRanges:(NSArray *)ranges usingTextStorage:textStorage withDocument:document]; - NSArray *selectionRanges = - [self selectionRangesAfterReplacingFragments:fragments - usingTextStorage:textStorage - withDocument:document]; - - if (selectionRanges.count > 0) - [[TRVSXcode textView] setSelectedRanges:selectionRanges]; + [self selectionRangesAfterReplacingFragments:fragments + usingTextStorage:textStorage + withDocument:document]; + + [[TRVSXcode textView] setSelectedRange:originSelectedRange]; + [[TRVSXcode textView] centerSelectionInVisibleArea:nil]; } - (NSArray *) From ba3f264c0447208e1520d6dc0f8822df2f8abba3 Mon Sep 17 00:00:00 2001 From: freshlhy Date: Tue, 1 Apr 2014 18:28:42 -0700 Subject: [PATCH 2/3] add delete line function --- ClangFormat/TRVSClangFormat.m | 7 +++++++ ClangFormat/TRVSFormatter.h | 2 ++ ClangFormat/TRVSFormatter.m | 5 +++++ 3 files changed, 14 insertions(+) diff --git a/ClangFormat/TRVSClangFormat.m b/ClangFormat/TRVSClangFormat.m index 7172d44..a28b562 100644 --- a/ClangFormat/TRVSClangFormat.m +++ b/ClangFormat/TRVSClangFormat.m @@ -103,6 +103,13 @@ - (void)addActioningMenuItemsToFormatMenu { keyEquivalent:@""]; [formatSelectedFilesItem setTarget:self.formatter]; [self.formatMenu addItem:formatSelectedFilesItem]; + + NSMenuItem *deleteLineItem = + [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"Delete line", nil) + action:@selector(deleteLine) + keyEquivalent:@""]; + [deleteLineItem setTarget:self.formatter]; + [self.formatMenu addItem:deleteLineItem]; } - (void)addSeparatorToFormatMenu { diff --git a/ClangFormat/TRVSFormatter.h b/ClangFormat/TRVSFormatter.h index 83beee0..9bbc7f9 100644 --- a/ClangFormat/TRVSFormatter.h +++ b/ClangFormat/TRVSFormatter.h @@ -23,4 +23,6 @@ - (void)formatSelectedFiles; - (void)formatDocument:(IDESourceCodeDocument *)document; +- (void)deleteLine; + @end diff --git a/ClangFormat/TRVSFormatter.m b/ClangFormat/TRVSFormatter.m index 02b13ae..f115667 100644 --- a/ClangFormat/TRVSFormatter.m +++ b/ClangFormat/TRVSFormatter.m @@ -49,6 +49,11 @@ - (void)formatSelectedCharacters { inDocument:[TRVSXcode sourceCodeDocument]]; } +- (void)deleteLine { + [[TRVSXcode textView] selectLine:nil]; + [[TRVSXcode textView] delete:nil]; +} + - (void)formatSelectedFiles { NSArray *fileNavigableItems = [TRVSXcode selectedFileNavigableItems]; From 44b0670bfe474969c8a4911720d89ab2672f22c0 Mon Sep 17 00:00:00 2001 From: freshlhy Date: Tue, 8 Apr 2014 08:16:50 -0700 Subject: [PATCH 3/3] change Delete line to Delete Line --- .../project.xcworkspace/contents.xcworkspacedata | 7 +++++++ ClangFormat/TRVSClangFormat.m | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 ClangFormat.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/ClangFormat.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ClangFormat.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..fe06c1e --- /dev/null +++ b/ClangFormat.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ClangFormat/TRVSClangFormat.m b/ClangFormat/TRVSClangFormat.m index a28b562..ebc51b0 100644 --- a/ClangFormat/TRVSClangFormat.m +++ b/ClangFormat/TRVSClangFormat.m @@ -105,7 +105,7 @@ - (void)addActioningMenuItemsToFormatMenu { [self.formatMenu addItem:formatSelectedFilesItem]; NSMenuItem *deleteLineItem = - [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"Delete line", nil) + [[NSMenuItem alloc] initWithTitle:NSLocalizedString(@"Delete Line", nil) action:@selector(deleteLine) keyEquivalent:@""]; [deleteLineItem setTarget:self.formatter];