Comparison of advantages and disadvantages of Xcode plug-ins (20 plug-ins recommended) and xcode20
This article outlines the usage of some of the plug-ins you have used (that is, the plug-ins are not easy to use ). Before that, simply add two plug-ins to note that you can ignore these plug-ins.
1. Alcatraz
Similar to cocoapods that manages third-party libraries, the management plug-in also has an Alcatraz.
The installation method is also very simple. If you haven't installed it before, execute the following command
curl -fsSL https://raw.github.com/alcatraz/Alcatraz/master/Scripts/install.sh | sh
If the latest version of Xcode is unavailable, uninstall the old version before installing the new version.
The uninstall method is as follows:
rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcpluginrm -rf ~/Library/Application\ Support/Alcatraz/
Note: Maybe not everyone uses Alcatraz, but they usually like to download and run it on github and load Bundle. If many plug-ins have been installed, now it's okay to use Alcatraz. After Alcatraz is installed, it will be automatically integrated before installation.
In addition, even if you use this tool xcode, you also need to restart the application to save this step.
2. Update the plug-in
Whether you install the plug-in using the direct download zip method or the plug-in installed using Alcatraz, if the plug-in itself does not support the latest xcode, after you update a version of Xcode, the Xcode plug-in will become invalid. This problem is that the DVTPlugInCompatibilityUUID of the latest xcode version is not configured in the Support List of the plug-in.
First, enter
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
Then follow the directory/Library/Application \ Support/Developer/Shared/Xcode/Plug-ins below
Find the plug-in list, select the corresponding plug-in display Package content, and open the info. plist file to add the latest UUID to this array.
There are also better practices:
find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add UUID
The last UUID is obtained previously.
Recommended plug-ins
Next, let's go to the topic and talk about the plug-ins I like to use. All links are attached, and no animations are provided to avoid chaos. The basic connections are available on github.
1. vv1_enter-add document comments to Xcode three bars
Https://github.com/onevcat/VVDocumenter-Xcode
Among all the plug-ins, this is the first one I used and should be the first one. It is also very convenient to use, but it may take a long time to find that the automatically generated annotation is that a block will pop up for every parameter and return value, and most of the parameters and return values in our daily development are clearly visible, it does not need to be marked one by one, which makes it troublesome for me to manually delete a part of it every time I press the three bars. If the author can provide one of the existing methods, and the other method is only Description, it will be very convenient. Or a brainless conjecture is to determine whether a parameter is of the basic data type or a special type based on the existing conditions. Only special parameters generate a comment code block. If the returned value is instancetype, you do not need to generate the annotation code block, or determine whether the parameter name is a common word (time) or a combination word (categoryID). It may be better if you do not generate comments for common words. Maybe I think more about it. This plug-in is required, not to mention the support of swift now.
2. The small map is displayed on the Right of SCXcodeMiniMap.
Https://github.com/stefanceriu/SCXcodeMiniMap
This is similar to the sublime function, which is very useful. In addition, the Code mini map on the right provides many configurable places, and the macro and comment sections are highlighted. Clicking anywhere in the small map will automatically scroll to this point. This is useful when some class code is very long and you don't know where you are. (If you often use pragma mark, you should not say it)
3. Fuzzy search is supported by FuzzyAutocomplete Code Completion
Https://github.com/FuzzyAutocomplete/FuzzyAutocompletePlugin
You do not need to start from the beginning to complete the code. You only need to remember a specific word to match it. In addition, there are several prefixes in the project. For example, in the past, the MT prefix is the MTB prefix, which can be matched even if you have missed the prefix. Of course, there is also a drawback that you will match a long string in a very common method. It looks a bit redundant and xcode will be relatively slow, if you want to delete the characters one by one using delete, xcode and crash may occur (maybe it is in conflict with another plug-in, and I am wrong about it ). You don't need to look at your preferences, because Apple has a lot of weird APIs, such as Rect, Which is CGRectMake, but when it comes to Range, it's NSMakeRange. If it's used, it won't be pitted by him.
4. The image thumbnails are automatically displayed when the KSImageNamed image is used.
Https://github.com/ksuther/KSImageNamed-Xcode
It is also a very brutal function. during development, our image names are all similar to fb_poinum_high. Using this plug-in, you can find the corresponding batch of image thumbnails and then select them from top to bottom. The disadvantage is that you must delete the imageNamed and re-click it to view the thumbnail of the image, if you modify the image name in @ "fb_poinum_high", you can see the image list.
5. HOStringSense can write NSString, what you see and what you get in the pop-up box
Https://github.com/holtwick/HOStringSense-for-Xcode
There were several times before that we had to write the msg for line breaks. Sometimes we were not sure about it. It was very convenient to use this plug-in. In the pop-up box, what you see is what you get. The length of the string is also displayed when the cursor points to the string, which is also very common.
6. GitDiff easily and intuitively marks the modified part of the commit.
Https://github.com/johnno1962/GitDiff
In the development of enterprise-level apps, this plug-in has a very high usage and very good results. M, D, A, A + ,? You can quickly display the files you have modified. However, the plug-in can be displayed exactly in the file. By default, the new position is green and the modified position is red. Of course, these are all configurable. (Although xcode or the terminal has many ways to compare diff, it is not so simple and intuitive)
7. xvim supports vim operations on the xcode editing page
Https://github.com/JugglerShu/XVim
After this plug-in is introduced, the cursor on the normal code page of xcode will be changed to the square in vim. attackers familiar with the vim command should like this plug-in, and dd will delete a line directly, it is really nice to use dw to delete a word. After a while, I found that xcode's original encoding method changes (which can be said to be invasive) are not large, because pressing "s" is editing. It is the same as xcode in the past and has many functions. Pressing "esc" is very sharp to switch to "vim. In short, it is very easy to use, and there are more than 3000 stars on github, and people are constantly mentioning issue, which is now very complete.
8. XAlign provides various Automatic Alignment Schemes
Https://github.com/qfish/XAlign
This plug-in provides many automatic alignment functions, which are brutal. Supports automatic alignment of "=" @ "and property. After installation, you can use the shortcut keys to all the items involved in the project. The comment is that automatic alignment of braces and indentation is not yet supported.
9. The debug view is automatically hidden when BBUDebuggerTuckAway knocks on the code.
Https://github.com/neonichu/BBUDebuggerTuckAway
Provides micro-operation plug-ins, which provide simple functions but are very practical. When the code is knocked out, or when the Bug is changed, this operation will be executed several times in a loop after the code is RUN and debugged. At this time, we will see how big a surprise such an unremarkable function brings.
10. Backlight-for-XCode highlight the row being edited
Https://github.com/limejelly/Backlight-for-XCode
It is also a micro-operating plug-in with simple functions, that is, the line of code you are editing is highlighted. The color and display scheme are configurable. This plug-in has two major advantages: one is that when you look for code from the scroll wheel, there is a direction to know where the method you are editing is, second, some lines of code are broken down into two or three lines, but they are still a line of code, which will be highlighted. The disadvantage is that the author may not set the default value. After installation, you will find that it has no effect. You must go to the menu to enable the function and set the default highlight color to white =. =
11. cocoapods-xcode-plugin pod-related operations can be performed in the xcode menu
Https://github.com/kattrali/cocoapods-xcode-plugin
Generally, the App should be rarely modified after the pod is stable, but the function provided by this library is also excellent. It can implement pod install, create/modify podfile, and create/modify podspec files. People who are used to terminal iterm may not be very comfortable. Those who are used to source tree may think this plug-in is very nice ~
12. A color palette is selected when ColorSense is input.
Https://github.com/omz/ColorSense-for-Xcode
When using colorWithRGB, you can click a color selection box and select a color. However, this function is of little use in Wonderful or enterprise-level apps, because a project has visual specifications, it should all be written into a specific macro. Even if there is no visual specification, there will also be an RGB macro (r, g, B,. [UIColor colorWithRed: 233/255. 0 Green: 213/255. 0 Blue: 12/255. 0 alpha] This code is still not beautiful. You can use this plug-in to test the demo.
13. The code is automatically generated during SCXcodeSwitchExpander switch enumeration.
Https://github.com/stefanceriu/SCXcodeSwitchExpander
If you use enumeration in your project, it is very convenient to automatically generate all possibilities, and each type contains a code block. You can directly switch between tabs. Although the usage is not very high, it is very convenient to use it. I used to write case: 1 case: 2 when I was lazy. Now I can proceed to the standard.
14. DerivedData Exterminator one-click deletion of Derived Data
Https://github.com/kattrali/deriveddata-exterminator
After using this plug-in, there are some more operations in the view menu, you can delete Derived Data with one click. Sometimes debugging, startup diagrams, launch screen, navgationBar appearance, and other functions may require frequent deletion of derived data for debugging. The previous solution should be to open the xcode preference locations to delete it, which is much more convenient now. The disadvantage is that deleting the Derived Data of this project and deleting All Derived Data are put together directly. If you slide your hand, you will get an error. Some people have slow computer performance. It is too slow to Build a new project after deleting Derived Data from other projects. Remember that a small tool can display the main directory of a running project in find to debug the data cache. If this library is integrated with this function, it will be better.
15. XcodeColors console printing color log
Https://github.com/robbiehanson/XcodeColors
Some people will say that the color log can use DDLog. This plug-in and DDLog can work together, or only this plug-in can be used. At least I think this plug-in is quite useful. You can customize a macro to make it light-weight in color at appropriate places. The disadvantage is that if you write a lot of such code in your project, but if you run xcode without the plug-in installed by others, it will be ineffective. However, the debugging bar does not display the color at most.
16. The OMQuickHelp option + button will be opened directly with dash.
Https://github.com/omz/Dash-Plugin-for-Xcode
Dash is a powerful tool for viewing APIs and documents. You can download and view documents on various platforms. The normal option + Click will pop up a small floating window showing api-related information. If this plug-in is used, the corresponding document will be directly opened in dash, the premise is that you have downloaded the xcode documentation in dash, and you have to install dash. Dash is sold for dozens of dollars in the Apple Store and cannot be found in China. Here is a dash cracked version: http://share.weiyun.com/6fe485efbd9fc160dbc815639b65085b (password: xzGP) (if you ask me why I don't need Baidu cloud? I want to talk about Baidu cloud)
17. When the DXXcodeConsoleUnicodePlugin debug column is printed,/ueo6 is automatically converted into Chinese characters.
Https://github.com/dhcdht/DXXcodeConsoleUnicodePlugin
When we call the frontend and backend interfaces, the url is usually pasted to the browser json data to chrome for automatic conversion (provided that you have installed the jsonformater plug-in ). However, sometimes, for example, the POST request results cannot be seen in the browser, but the breakpoint can only be printed in debug. If msg:/ue06/ud07/ug08 is encountered, it will be very painful. After this plug-in is installed, you can convert the uinicode into Chinese characters in the debug console. Here I mentioned the console optimization. I also mentioned a small trick by the way, that is, to allow the console to output information of the id type (normally, the object of the po id type will display an error) enter the following three lines of commands in sequence on the terminal:
touch ~/.lldbinitecho display @import UIKit >> ~/.lldbinitecho target stop-hook add -o \"target stop-hook disable\" >> ~/.lldbinit
18. XToDo shortcut key tag, and unified view
Https://github.com/trawor/XToDo
Previously set TODO and mark somewhere ??? I work on a specific symbol by hand, and then search for the full text. With this plug-in, you can use the shortcut key to add TODO and FIXME (here, if you use a code block, it can also be implemented in the same way ). Then, TODOList is provided to quickly view the tags in various places. This eliminates the need for a search step. But the disadvantage is that the ToDoList dialog box is suspended rather than embedded in xcode like the above SCXcodeMiniMap or GitDiff, in this way, the focus of xcode and the focus of the dialog box will be switched back and forth when you click back and forth. Although you set it to the top, it still affects the experience. If I use search, I don't have to switch back and forth. But this plug-in itself is quite good.
19. Screen jitter sparks splash when XActivatePowerMode knocks on the code
Https://github.com/qfish/XActivatePowerMode
This is a plug-in that imitates sublime's code-hitting effect. Some people may think that only spark does not need jitter. Of course, these effects can be turned on or off in the menu. However, when the plug-in works with FuzzyAutocomplete above, the plug-in is very slow and xcodecrash is used directly, so proceed with caution.
20. Screen jitter sparks splash when ActivatePowerMode knocks on the code
Https://github.com/poboke/ActivatePowerMode
Features are similar to the above and more harsh, with sound. However, the problem of xcode card change also exists. In addition, this plug-in is more advanced than above because the color of the splash spark is the same as the color of the Code in the editing position. The author finds the private api of the color scheme and returns the color to get the code color. The splash effect is closer to the effect on sublime. Some people use the mechanical keyboard and sound to cause the hand to be paralyzed, so this is also careful.
Some plug-ins are also very popular. For example, codepilot3 is equivalent to Aifred in xcode, but it cannot be used after xcode7 is upgraded. Maybe it is a key conflict or something, their official website is brainless CMD + Shift + x open the search box. But what if the press is invalid? There is no menu for you to set this shortcut key, and the code library has not been updated for a long time. There is also a plug-in that allows your xcode to jump directly to github to display the code for comparison, and it doesn't feel necessary, and sometimes github is very slow to open, and there is no consistency; there are plug-ins that can be used by you. after m completes the implementation of the method, it will be automatically provided to you in. the statement of the method for generating hware also seems that it is difficult for me to use it.
There are also plug-ins that are not recommended to be installed too much. I think I can pick up some useful plug-ins from above ~ Eight. If you use xcode, it will be very difficult and crash will often occur. If you encounter xcode crash problems frequently, you don't have to worry about it. You can clear all the plug-ins under the plug-in directory and restore the normal operation without reinstalling xcode.
For reprinting, you must specify the source text link.