From 144104df24bf983561d9972bb7cadfd0bdcaba63 Mon Sep 17 00:00:00 2001 From: Scott Resnik Date: Mon, 28 Nov 2016 15:17:22 -0600 Subject: [PATCH] Added methods to allow visible whitespace, and visible line endings to be configured independently. (#20) LGTM --- .../gradle/oomph/ConventionStyle.java | 39 ++++++++++++++++--- 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/diffplug/gradle/oomph/ConventionStyle.java b/src/main/java/com/diffplug/gradle/oomph/ConventionStyle.java index 9d646813e..d42dbc46a 100644 --- a/src/main/java/com/diffplug/gradle/oomph/ConventionStyle.java +++ b/src/main/java/com/diffplug/gradle/oomph/ConventionStyle.java @@ -37,12 +37,9 @@ public void niceText(String fontSize) { props.put("org.eclipse.jface.textfont", "1|" + font + "|" + fontSize + "|0|WINDOWS|1|-12|0|0|0|400|0|0|0|0|3|2|1|49|" + font); }); // visible whitespace - extension.workspaceProp(".metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs", props -> { - props.put("eclipse.preferences.version", "1"); - props.put("showCarriageReturn", "false"); - props.put("showLineFeed", "false"); - props.put("showWhitespaceCharacters", "true"); - }); + showWhiteSpace(true); + showLineEndings(false); + // show line numbers lineNumbers(true); } @@ -62,4 +59,34 @@ public void lineNumbers(boolean showLineNumbers) { props.put("lineNumberRuler", Boolean.toString(showLineNumbers)); }); } + + /** Determines whether or not to show white space not including line endings. */ + public void showWhiteSpace(boolean showWhiteSpace) { + extension.workspaceProp(".metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs", props -> { + props.put("eclipse.preferences.version", "1"); + props.put("showWhitespaceCharacters", Boolean.toString(showWhiteSpace)); + }); + } + + /** Determines whether or not to show line ending characters (carriage return/line feeds). */ + public void showLineEndings(boolean showLineEndings) { + showLineFeed(showLineEndings); + showCarriageReturn(showLineEndings); + } + + /** Determines whether or not to show line feeds. */ + public void showLineFeed(boolean showLineFeed) { + extension.workspaceProp(".metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs", props -> { + props.put("eclipse.preferences.version", "1"); + props.put("showLineFeed", Boolean.toString(showLineFeed)); + }); + } + + /** Determines whether or not to show carriage returns. */ + public void showCarriageReturn(boolean showCarriageReturn) { + extension.workspaceProp(".metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs", props -> { + props.put("eclipse.preferences.version", "1"); + props.put("showCarriageReturn", Boolean.toString(showCarriageReturn)); + }); + } }