Skip to content

Instantly share code, notes, and snippets.

@federicoiosue
Created October 21, 2019 14:18
Show Gist options
  • Save federicoiosue/dee53e882b3c70d544f8608769eb02fc to your computer and use it in GitHub Desktop.
Save federicoiosue/dee53e882b3c70d544f8608769eb02fc to your computer and use it in GitHub Desktop.

Revisions

  1. federicoiosue created this gist Oct 21, 2019.
    15 changes: 15 additions & 0 deletions README.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,15 @@
    This is the code styling that *must* be used to contribute to [Omni Notes](https://github.com/federicoiosue/Omni-Notes) project

    ### Base code style

    [Google](https://raw.githubusercontent.com/google/styleguide/gh-pages/intellij-java-google-style.xml) Java style is used as base

    ### Changes to base

    1. Hard wrap at 120 chars (instead than 100)
    4. Single space before method declaration parenthesis
    2. Simple lambdas in one line
    3. Simple methods in one line
    5. Simple classes in one line
    6. Chained method calls: do not wrap
    7. Chained method calls: align when multilined
    538 changes: 538 additions & 0 deletions omni_notes_code_style.xml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,538 @@
    <code_scheme name="GoogleStyle ON" version="173">
    <option name="OTHER_INDENT_OPTIONS">
    <value>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </value>
    </option>
    <option name="RIGHT_MARGIN" value="120" />
    <option name="SOFT_MARGINS" value="120" />
    <AndroidXmlCodeStyleSettings>
    <option name="LAYOUT_SETTINGS">
    <value>
    <option name="INSERT_BLANK_LINE_BEFORE_TAG" value="false" />
    </value>
    </option>
    </AndroidXmlCodeStyleSettings>
    <JavaCodeStyleSettings>
    <option name="INSERT_INNER_CLASS_IMPORTS" value="true" />
    <option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" />
    <option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" />
    <option name="IMPORT_LAYOUT_TABLE">
    <value>
    <package name="" withSubpackages="true" static="true" />
    <emptyLine />
    <package name="" withSubpackages="true" static="false" />
    </value>
    </option>
    <option name="JD_ALIGN_PARAM_COMMENTS" value="false" />
    <option name="JD_ALIGN_EXCEPTION_COMMENTS" value="false" />
    <option name="JD_P_AT_EMPTY_LINES" value="false" />
    <option name="JD_KEEP_EMPTY_PARAMETER" value="false" />
    <option name="JD_KEEP_EMPTY_EXCEPTION" value="false" />
    <option name="JD_KEEP_EMPTY_RETURN" value="false" />
    </JavaCodeStyleSettings>
    <Objective-C>
    <option name="INDENT_NAMESPACE_MEMBERS" value="0" />
    <option name="INDENT_C_STRUCT_MEMBERS" value="2" />
    <option name="INDENT_CLASS_MEMBERS" value="2" />
    <option name="INDENT_VISIBILITY_KEYWORDS" value="1" />
    <option name="INDENT_INSIDE_CODE_BLOCK" value="2" />
    <option name="KEEP_STRUCTURES_IN_ONE_LINE" value="true" />
    <option name="FUNCTION_PARAMETERS_WRAP" value="5" />
    <option name="FUNCTION_CALL_ARGUMENTS_WRAP" value="5" />
    <option name="TEMPLATE_CALL_ARGUMENTS_WRAP" value="5" />
    <option name="TEMPLATE_CALL_ARGUMENTS_ALIGN_MULTILINE" value="true" />
    <option name="ALIGN_INIT_LIST_IN_COLUMNS" value="false" />
    <option name="SPACE_BEFORE_SUPERCLASS_COLON" value="false" />
    </Objective-C>
    <Objective-C-extensions>
    <extensions>
    <pair source="cc" header="h" fileNamingConvention="NONE" />
    <pair source="c" header="h" fileNamingConvention="NONE" />
    </extensions>
    </Objective-C-extensions>
    <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="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="ECMA Script Level 4">
    <option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
    <option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
    <option name="ALIGN_MULTILINE_FOR" value="false" />
    <option name="CALL_PARAMETERS_WRAP" value="1" />
    <option name="METHOD_PARAMETERS_WRAP" value="1" />
    <option name="EXTENDS_LIST_WRAP" value="1" />
    <option name="BINARY_OPERATION_WRAP" value="1" />
    <option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" />
    <option name="TERNARY_OPERATION_WRAP" value="1" />
    <option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" />
    <option name="FOR_STATEMENT_WRAP" value="1" />
    <option name="ARRAY_INITIALIZER_WRAP" value="1" />
    <option name="IF_BRACE_FORCE" value="3" />
    <option name="DOWHILE_BRACE_FORCE" value="3" />
    <option name="WHILE_BRACE_FORCE" value="3" />
    <option name="FOR_BRACE_FORCE" value="3" />
    <option name="PARENT_SETTINGS_INSTALLED" value="true" />
    </codeStyleSettings>
    <codeStyleSettings language="HTML">
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="JAVA">
    <option name="KEEP_CONTROL_STATEMENT_IN_ONE_LINE" value="false" />
    <option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
    <option name="BLANK_LINES_AFTER_CLASS_HEADER" value="1" />
    <option name="ALIGN_MULTILINE_CHAINED_METHODS" value="true" />
    <option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
    <option name="ALIGN_MULTILINE_RESOURCES" value="false" />
    <option name="ALIGN_MULTILINE_FOR" value="false" />
    <option name="SPACE_BEFORE_METHOD_PARENTHESES" value="true" />
    <option name="CALL_PARAMETERS_WRAP" value="1" />
    <option name="METHOD_PARAMETERS_WRAP" value="1" />
    <option name="EXTENDS_LIST_WRAP" value="1" />
    <option name="THROWS_KEYWORD_WRAP" value="1" />
    <option name="BINARY_OPERATION_WRAP" value="1" />
    <option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" />
    <option name="TERNARY_OPERATION_WRAP" value="1" />
    <option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" />
    <option name="KEEP_SIMPLE_METHODS_IN_ONE_LINE" value="true" />
    <option name="KEEP_SIMPLE_LAMBDAS_IN_ONE_LINE" value="true" />
    <option name="KEEP_SIMPLE_CLASSES_IN_ONE_LINE" value="true" />
    <option name="FOR_STATEMENT_WRAP" value="1" />
    <option name="ARRAY_INITIALIZER_WRAP" value="1" />
    <option name="WRAP_COMMENTS" value="true" />
    <option name="IF_BRACE_FORCE" value="3" />
    <option name="DOWHILE_BRACE_FORCE" value="3" />
    <option name="WHILE_BRACE_FORCE" value="3" />
    <option name="FOR_BRACE_FORCE" value="3" />
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="JSON">
    <indentOptions>
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="JavaScript">
    <option name="RIGHT_MARGIN" value="80" />
    <option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
    <option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
    <option name="ALIGN_MULTILINE_FOR" value="false" />
    <option name="CALL_PARAMETERS_WRAP" value="1" />
    <option name="METHOD_PARAMETERS_WRAP" value="1" />
    <option name="BINARY_OPERATION_WRAP" value="1" />
    <option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" />
    <option name="TERNARY_OPERATION_WRAP" value="1" />
    <option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" />
    <option name="FOR_STATEMENT_WRAP" value="1" />
    <option name="ARRAY_INITIALIZER_WRAP" value="1" />
    <option name="IF_BRACE_FORCE" value="3" />
    <option name="DOWHILE_BRACE_FORCE" value="3" />
    <option name="WHILE_BRACE_FORCE" value="3" />
    <option name="FOR_BRACE_FORCE" value="3" />
    <option name="PARENT_SETTINGS_INSTALLED" value="true" />
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="ObjectiveC">
    <option name="KEEP_BLANK_LINES_BEFORE_RBRACE" value="1" />
    <option name="BLANK_LINES_BEFORE_IMPORTS" value="0" />
    <option name="BLANK_LINES_AFTER_IMPORTS" value="0" />
    <option name="BLANK_LINES_AROUND_CLASS" value="0" />
    <option name="BLANK_LINES_AROUND_METHOD" value="0" />
    <option name="BLANK_LINES_AROUND_METHOD_IN_INTERFACE" value="0" />
    <option name="ALIGN_MULTILINE_BINARY_OPERATION" value="false" />
    <option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" />
    <option name="FOR_STATEMENT_WRAP" value="1" />
    <option name="ASSIGNMENT_WRAP" value="1" />
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="PROTO">
    <option name="RIGHT_MARGIN" value="80" />
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="2" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="Python">
    <option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
    <option name="RIGHT_MARGIN" value="80" />
    <option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
    <option name="PARENT_SETTINGS_INSTALLED" value="true" />
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="SASS">
    <indentOptions>
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="SCSS">
    <indentOptions>
    <option name="CONTINUATION_INDENT_SIZE" value="4" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    <codeStyleSettings language="TypeScript">
    <indentOptions>
    <option name="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>
    <arrangement>
    <rules>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>xmlns:android</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>^$</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>xmlns:.*</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>^$</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:id</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>style</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>^$</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>^$</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:.*Style</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_width</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_height</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_weight</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_margin</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_marginTop</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_marginBottom</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_marginStart</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_marginEnd</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_marginLeft</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_marginRight</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:layout_.*</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:padding</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:paddingTop</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:paddingBottom</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:paddingStart</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:paddingEnd</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:paddingLeft</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*:paddingRight</NAME>
    <XML_ATTRIBUTE />
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*</NAME>
    <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*</NAME>
    <XML_NAMESPACE>http://schemas.android.com/apk/res-auto</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*</NAME>
    <XML_NAMESPACE>http://schemas.android.com/tools</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    <section>
    <rule>
    <match>
    <AND>
    <NAME>.*</NAME>
    <XML_NAMESPACE>.*</XML_NAMESPACE>
    </AND>
    </match>
    <order>BY_NAME</order>
    </rule>
    </section>
    </rules>
    </arrangement>
    </codeStyleSettings>
    <codeStyleSettings language="protobuf">
    <option name="RIGHT_MARGIN" value="80" />
    <indentOptions>
    <option name="INDENT_SIZE" value="2" />
    <option name="CONTINUATION_INDENT_SIZE" value="2" />
    <option name="TAB_SIZE" value="2" />
    </indentOptions>
    </codeStyleSettings>
    </code_scheme>