-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
JetBrains IDE configurations snowblock
This new snowblock includes all important configurations for all used JetBrains (1) IDEs and products which are currently IntelliJ (2) (Ultimate Edition), PyCharm (3) (Community Edition), Webstorm (4) and GoLand (5). For details about the paths see the documentation about directories used by the IDE to store settings, caches, plugins and logs (6). It includes… * …the code style (7) XMl configuration file stored in the `codestyles` folder. * …the inspections (8) XMl configuration file stored in the `inspections` folder. * …the keymaps (9) XMl configuration files for Linux and macOS stored in the `keymaps` folder. See the keymap reference (10) for a visual presentation of the default mappings. * …the preferences (11) XMl configuration files stored in the `options` folder. This includes the following settings: * `code.style.schemes.xml` - settings of the currently used code style. * `colors.scheme.xml` - settings of the currently used color scheme. * `customization.xml` and `project.default.xml` - settings of the customized menus and toolbars (12). * `editor.codeinsight.xml` - settings of various automatic code transformations. * `keymap.xml` - the currently used keymap. * `laf.xml` and `ui.lnf.yml` - settings of the currently used UI theme. * all other customized preferences defined in the various categories: `editor.xml`, `ide.general.xml` and `options.xml` * …the list of disabled plugins (13) stored in the `disabled_plugins.txt` file. >> snowsaw core plugin configuration NOTE: JetBrains uses a naming scheme for the folder all user configurations are stored in based on the product major/minor version! This requires this snowblock to be updated as soon as the product gets updated to adapt to the new version string. >>>>>> `clean` The target paths (based on the host OS) with the naming scheme `<PRODUCT><VERSION>` should be cleaned before the `link` core plugin execution. NOTE: Due to the JetBrains naming scheme for the target path (more details described above) the previous targets should be kept to ensure they are cleaned up by this plugin after updating to a new product version. >>>>>> `link` The target paths (based on the host OS) with the naming scheme `<PRODUCT><VERSION>` should be created by snowsaw if they doesn't exist yet. NOT: Due to the JetBrains naming scheme for the target path (more details described above) must be updated after updating to a new product version. References: (1) https://www.jetbrains.com/products.html (2) https://www.jetbrains.com/idea (3) https://www.jetbrains.com/pycharm (4) https://www.jetbrains.com/webstorm (5) https://www.jetbrains.com/go (6) https://intellij-support.jetbrains.com/hc/en-us/articles/206544519-Directories-used-by-the-IDE-to-store-settings-caches-plugins-and-logs (7) https://www.jetbrains.com/help/idea/settings-code-style.html (8) https://www.jetbrains.com/help/idea/inspections-settings.html (9) https://www.jetbrains.com/help/idea/settings-keymap.html (10) https://www.jetbrains.com/help/idea/keymap-reference.html (11) https://www.jetbrains.com/help/idea/settings-preferences-dialog.html (12) https://www.jetbrains.com/help/idea/menus-and-toolbars.html (13) https://www.jetbrains.com/help/idea/managing-plugins.html Closes GH-137
- Loading branch information
1 parent
505e340
commit 2fa3d1d
Showing
18 changed files
with
1,092 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# JetBrains IDEs | ||
|
||
This snowblock provides all important configurations for all used [JetBrains][] IDEs and products, currently [IntelliJ][] (Ultimate Edition), [PyCharm][] (Community Edition), [Webstorm][] and [GoLand][]. For details about the paths for user configurations see the documentation about [directories used by the IDE to store settings, caches, plugins and logs][intellij-doc-settings-paths]. | ||
|
||
## Content | ||
|
||
The includes configurations are mostly platform and IDE/product independent. | ||
|
||
* The [code style][intellij-doc-code-style] XMl configuration file stored in the `codestyles` folder. | ||
* The [inspections][intellij-doc-inspections] XMl configuration file stored in the `inspections` folder. | ||
* The [keymaps][intellij-doc-keymap] XMl configuration files for Linux and macOS stored in the `keymaps` folder. See the [keymap reference][intellij-doc-keymap-ref] for a visual presentation of the default mappings. | ||
* The [preference][intellij-doc-prefs] XMl configuration files are stored in the `options` folder: | ||
* `code.style.schemes.xml` - settings of the currently used code style. | ||
* `colors.scheme.xml` - settings of the currently used color scheme. | ||
* `customization.xml` and `project.default.xml` - settings of the customized [menus and toolbars][intellij-doc-menu-toolbar]. | ||
* `editor.codeinsight.xml` - settings of various automatic code transformations. | ||
* `keymap.xml` - the currently used keymap. | ||
* `laf.xml` and `ui.lnf.yml` - settings of the currently used UI theme. | ||
* all other customized preferences defined in the various categories: `editor.xml`, `ide.general.xml` and `options.xml` | ||
* The list of [disabled plugins][intellij-doc-plugins] stored in the `disabled_plugins.txt` file. | ||
|
||
## Configurations | ||
|
||
### Typeface | ||
|
||
Due to licensing and the availability of specific font families on different operating systems the preferences for the sans-serif UI typefaces must be configured manually using the IntelliJ UI (_Preferences_ → _Appearance & Behavior_ → _Appearance_ → _UI Options_) or by adding the following `<option>` entries with the desired font family names: | ||
|
||
```xml | ||
<!-- Linux --> | ||
<option name="FONT_FACE" value="Noto Sans" /> | ||
|
||
<!-- macOS (default font families) --> | ||
<option name="FONT_FACE" value=".SF NS Text" /> | ||
``` | ||
|
||
The default and secondary monospace fonts for the editor typeface are system independent and have already been set in the [`editor.xml`][gh-igloo-sb-jb-editor.xml] file to [Source Code Pro][google-font-source-code-pro] and [Hack][font-hack]: | ||
|
||
```xml | ||
<option name="FONT_FAMILY" value="Source Code Pro" /> | ||
<option name="SECONDARY_FONT_FAMILY" value="Hack" /> | ||
``` | ||
|
||
### snowsaw core plugins | ||
|
||
JetBrains uses a [naming scheme for the folder all user configurations][intellij-doc-settings-paths] are stored in based on the product major/minor version! This requires this snowblock to be updated as soon as the product gets updated to adapt to the new version string based on the pattern `<PRODUCT><VERSION>`. | ||
|
||
The base target folder name for the `clean` and `link` plugins must be updated after updating to a new product version. Next to this, the `clean` plugin should also keep the previous target paths to ensure they are cleaned up after updating. | ||
|
||
[font-hack]: https://sourcefoundry.org/hack | ||
[gh-igloo-sb-jb-editor.xml]: https://github.com/arcticicestudio/igloo/blob/develop/snowblocks/jetbrains/ooptions/editor.xml | ||
[goland]: https://www.jetbrains.com/go | ||
[google-font-source-code-pro]: https://fonts.google.com/specimen/Source+Code+Pro | ||
[intellij]: https://www.jetbrains.com/idea | ||
[intellij-doc-code-style]: https://www.jetbrains.com/help/idea/settings-code-style.html | ||
[intellij-doc-inspections]: https://www.jetbrains.com/help/idea/inspections-settings.html | ||
[intellij-doc-keymap]: https://www.jetbrains.com/help/idea/settings-keymap.html | ||
[intellij-doc-keymap-ref]: https://www.jetbrains.com/help/idea/keymap-reference.html | ||
[intellij-doc-menu-toolbar]: https://www.jetbrains.com/help/idea/menus-and-toolbars.html | ||
[intellij-doc-plugins]: https://www.jetbrains.com/help/idea/managing-plugins.html | ||
[intellij-doc-prefs]: https://www.jetbrains.com/help/idea/settings-preferences-dialog.html | ||
[intellij-doc-settings-paths]: https://intellij-support.jetbrains.com/hc/en-us/articles/206544519-Directories-used-by-the-IDE-to-store-settings-caches-plugins-and-logs | ||
[jetbrains]: https://www.jetbrains.com/products.html | ||
[pycharm]: https://www.jetbrains.com/pycharm | ||
[webstorm]: https://www.jetbrains.com/webstorm |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
<!-- | ||
Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com> | ||
Copyright (C) 2016-present Sven Greb <development@svengreb.de> | ||
Project: igloo | ||
Repository: https://github.com/arcticicestudio/igloo | ||
License: MIT | ||
--> | ||
<code_scheme name="arctic-codestyle" version="173"> | ||
<option name="OTHER_INDENT_OPTIONS"> | ||
<value> | ||
<option name="INDENT_SIZE" value="2" /> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</value> | ||
</option> | ||
<option name="LINE_SEPARATOR" value=" " /> | ||
<option name="RIGHT_MARGIN" value="160" /> | ||
<option name="WRAP_WHEN_TYPING_REACHES_RIGHT_MARGIN" value="true" /> | ||
<option name="SOFT_MARGINS" value="160" /> | ||
<CssCodeStyleSettings> | ||
<option name="HEX_COLOR_UPPER_CASE" value="true" /> | ||
<option name="HEX_COLOR_LONG_FORMAT" value="true" /> | ||
</CssCodeStyleSettings> | ||
<HTMLCodeStyleSettings> | ||
<option name="HTML_DO_NOT_INDENT_CHILDREN_OF" value="" /> | ||
</HTMLCodeStyleSettings> | ||
<JavaCodeStyleSettings> | ||
<option name="VISIBILITY" value="private" /> | ||
<option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" /> | ||
<option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" /> | ||
</JavaCodeStyleSettings> | ||
<XML> | ||
<option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" /> | ||
</XML> | ||
<codeStyleSettings language="CSS"> | ||
<indentOptions> | ||
<option name="INDENT_SIZE" value="2" /> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</indentOptions> | ||
</codeStyleSettings> | ||
<codeStyleSettings language="Groovy"> | ||
<indentOptions> | ||
<option name="INDENT_SIZE" value="2" /> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</indentOptions> | ||
</codeStyleSettings> | ||
<codeStyleSettings language="HTML"> | ||
<option name="WRAP_ON_TYPING" value="1" /> | ||
<indentOptions> | ||
<option name="INDENT_SIZE" value="2" /> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</indentOptions> | ||
</codeStyleSettings> | ||
<codeStyleSettings language="JAVA"> | ||
<option name="KEEP_BLANK_LINES_IN_DECLARATIONS" value="5" /> | ||
<indentOptions> | ||
<option name="INDENT_SIZE" value="2" /> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</indentOptions> | ||
</codeStyleSettings> | ||
<codeStyleSettings language="JSON"> | ||
<indentOptions> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</indentOptions> | ||
</codeStyleSettings> | ||
<codeStyleSettings language="XML"> | ||
<indentOptions> | ||
<option name="INDENT_SIZE" value="2" /> | ||
<option name="CONTINUATION_INDENT_SIZE" value="2" /> | ||
<option name="TAB_SIZE" value="2" /> | ||
</indentOptions> | ||
</codeStyleSettings> | ||
</code_scheme> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
AngularJS | ||
CFML Support | ||
CVS | ||
CloudBees | ||
CloudFoundry | ||
Emma | ||
Geronimo | ||
GlassFish | ||
JBoss | ||
OpenShift | ||
Osmorc | ||
PerforceDirectPlugin | ||
Resin | ||
StrutsAssistant | ||
Subversion | ||
TFS | ||
TestNG-J | ||
WebSphere | ||
Weblogic | ||
com.intellij.appengine | ||
com.intellij.dmserver | ||
com.intellij.drools | ||
com.intellij.flex | ||
com.intellij.freemarker | ||
com.intellij.gwt | ||
com.intellij.javaee.view | ||
com.intellij.jboss.arquillian | ||
com.intellij.jboss.core | ||
com.intellij.jbpm | ||
com.intellij.play | ||
com.intellij.seam | ||
com.intellij.seam.pageflow | ||
com.intellij.seam.pages | ||
com.intellij.struts2 | ||
com.intellij.tapestry | ||
com.intellij.vaadin | ||
com.intellij.velocity | ||
com.jetbrains.plugins.asp | ||
cucumber-groovy | ||
cucumber-java | ||
gherkin | ||
hg4idea | ||
org.coffeescript | ||
org.intellij.grails | ||
org.jetbrains.idea.eclipse | ||
org.jetbrains.kotlin | ||
org.jetbrains.plugins.haml | ||
org.jetbrains.plugins.stylus | ||
spy-js |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,143 @@ | ||
<!-- | ||
Copyright (C) 2016-present Arctic Ice Studio <development@arcticicestudio.com> | ||
Copyright (C) 2016-present Sven Greb <development@svengreb.de> | ||
Project: igloo | ||
Repository: https://github.com/arcticicestudio/igloo | ||
License: MIT | ||
--> | ||
<profile version="1.0"> | ||
<option name="myName" value="arctic-inspections" /> | ||
<inspection_tool class="ArrayEquality" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="BashFloatArithmetic" enabled="true" level="WEAK WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="BashSimpleArrayUse" enabled="true" level="WEAK WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="BashUnregisterGlobalVariableInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="CheckEmptyScriptTag" enabled="false" level="WARNING" enabled_by_default="false" /> | ||
<inspection_tool class="ClassHasNoToStringMethod" enabled="true" level="WEAK WARNING" enabled_by_default="true"> | ||
<option name="excludeClassNames" value="" /> | ||
<option name="excludeException" value="true" /> | ||
<option name="excludeDeprecated" value="true" /> | ||
<option name="excludeEnum" value="false" /> | ||
<option name="excludeAbstract" value="false" /> | ||
<option name="excludeTestCode" value="false" /> | ||
<option name="excludeInnerClasses" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="CollectionContainsUrl" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="DynamicRegexReplaceableByCompiledPattern" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="EqualsHashCodeCalledOnUrl" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="HtmlTagCanBeJavadocTag" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="HtmlUnknownAttribute" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="myValues"> | ||
<value> | ||
<list size="4"> | ||
<item index="0" class="java.lang.String" itemvalue="layout:decorator" /> | ||
<item index="1" class="java.lang.String" itemvalue="layout:fragment" /> | ||
<item index="2" class="java.lang.String" itemvalue="th:fragment" /> | ||
<item index="3" class="java.lang.String" itemvalue="class" /> | ||
</list> | ||
</value> | ||
</option> | ||
<option name="myCustomValuesEnabled" value="true" /> | ||
</inspection_tool> | ||
<inspection_tool class="HtmlUnknownTag" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="myValues"> | ||
<value> | ||
<list size="8"> | ||
<item index="0" class="java.lang.String" itemvalue="nobr" /> | ||
<item index="1" class="java.lang.String" itemvalue="noembed" /> | ||
<item index="2" class="java.lang.String" itemvalue="comment" /> | ||
<item index="3" class="java.lang.String" itemvalue="noscript" /> | ||
<item index="4" class="java.lang.String" itemvalue="embed" /> | ||
<item index="5" class="java.lang.String" itemvalue="script" /> | ||
<item index="6" class="java.lang.String" itemvalue="th:block" /> | ||
<item index="7" class="java.lang.String" itemvalue="style" /> | ||
</list> | ||
</value> | ||
</option> | ||
<option name="myCustomValuesEnabled" value="true" /> | ||
</inspection_tool> | ||
<inspection_tool class="IOResource" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="ignoredTypesString" value="java.io.ByteArrayOutputStream,java.io.ByteArrayInputStream,java.io.StringBufferInputStream,java.io.CharArrayWriter,java.io.CharArrayReader,java.io.StringWriter,java.io.StringReader" /> | ||
<option name="insideTryAllowed" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="IgnoreUnusedEntry" enabled="true" level="WEAK WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="InconsistentLineSeparators" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="JDBCResource" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="insideTryAllowed" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="JNDIResource" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="insideTryAllowed" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="JavaDoc" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="TOP_LEVEL_CLASS_OPTIONS"> | ||
<value> | ||
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" /> | ||
<option name="REQUIRED_TAGS" value="" /> | ||
</value> | ||
</option> | ||
<option name="INNER_CLASS_OPTIONS"> | ||
<value> | ||
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" /> | ||
<option name="REQUIRED_TAGS" value="" /> | ||
</value> | ||
</option> | ||
<option name="METHOD_OPTIONS"> | ||
<value> | ||
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" /> | ||
<option name="REQUIRED_TAGS" value="@return@param@throws or @exception" /> | ||
</value> | ||
</option> | ||
<option name="FIELD_OPTIONS"> | ||
<value> | ||
<option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" /> | ||
<option name="REQUIRED_TAGS" value="" /> | ||
</value> | ||
</option> | ||
<option name="IGNORE_DEPRECATED" value="false" /> | ||
<option name="IGNORE_JAVADOC_PERIOD" value="true" /> | ||
<option name="IGNORE_DUPLICATED_THROWS" value="false" /> | ||
<option name="IGNORE_POINT_TO_ITSELF" value="false" /> | ||
<option name="myAdditionalJavadocTags" value="{inheritDoc}" /> | ||
</inspection_tool> | ||
<inspection_tool class="JavaLangImport" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="MissingDeprecatedAnnotation" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="MissingPackageInfo" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="OnDemandImport" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="PackageDotHtmlMayBePackageInfo" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="PackageInfoWithoutPackage" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="ProblematicWhitespace" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="PublicStaticArrayField" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="RedundantMethodOverride" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="SamePackageImport" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="SetReplaceableByEnumSet" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="SocketResource" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="insideTryAllowed" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="StringEqualsEmptyString" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="StringReplaceableByStringBuffer" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="onlyWarnOnLoop" value="true" /> | ||
</inspection_tool> | ||
<inspection_tool class="TodoComment" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="UnnecessaryInheritDoc" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="UnnecessaryJavaDocLink" enabled="true" level="WARNING" enabled_by_default="true"> | ||
<option name="ignoreInlineLinkToSuper" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="UnusedImport" enabled="true" level="WARNING" enabled_by_default="true" /> | ||
<inspection_tool class="WeakerAccess" enabled="true" level="WEAK WARNING" enabled_by_default="true"> | ||
<option name="SUGGEST_PACKAGE_LOCAL_FOR_MEMBERS" value="true" /> | ||
<option name="SUGGEST_PACKAGE_LOCAL_FOR_TOP_CLASSES" value="true" /> | ||
<option name="SUGGEST_PRIVATE_FOR_INNERS" value="false" /> | ||
</inspection_tool> | ||
<inspection_tool class="unused" enabled="true" level="WEAK WARNING" enabled_by_default="true"> | ||
<option name="LOCAL_VARIABLE" value="true" /> | ||
<option name="FIELD" value="true" /> | ||
<option name="METHOD" value="true" /> | ||
<option name="CLASS" value="true" /> | ||
<option name="PARAMETER" value="true" /> | ||
<option name="REPORT_PARAMETER_FOR_PUBLIC_METHODS" value="true" /> | ||
<option name="ADD_MAINS_TO_ENTRIES" value="true" /> | ||
<option name="ADD_APPLET_TO_ENTRIES" value="true" /> | ||
<option name="ADD_SERVLET_TO_ENTRIES" value="true" /> | ||
<option name="ADD_NONJAVA_TO_ENTRIES" value="true" /> | ||
</inspection_tool> | ||
</profile> |
Oops, something went wrong.