summaryrefslogtreecommitdiff
path: root/src/jline
diff options
context:
space:
mode:
Diffstat (limited to 'src/jline')
-rw-r--r--src/jline/pom.xml3
-rw-r--r--src/jline/src/main/java/jline/ConsoleReader.java7
-rw-r--r--src/jline/src/main/java/jline/UnixTerminal.java19
3 files changed, 18 insertions, 11 deletions
diff --git a/src/jline/pom.xml b/src/jline/pom.xml
index 25356ff432..ac0e188585 100644
--- a/src/jline/pom.xml
+++ b/src/jline/pom.xml
@@ -48,6 +48,9 @@ To make a bundle and request that ibilio upload it, do:
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+<properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+</properties>
<modelVersion>4.0.0</modelVersion>
<groupId>jline</groupId>
<artifactId>jline</artifactId>
diff --git a/src/jline/src/main/java/jline/ConsoleReader.java b/src/jline/src/main/java/jline/ConsoleReader.java
index 6c7fff1aed..66655cce73 100644
--- a/src/jline/src/main/java/jline/ConsoleReader.java
+++ b/src/jline/src/main/java/jline/ConsoleReader.java
@@ -210,9 +210,10 @@ public class ConsoleReader implements ConsoleOperations {
this.out = out;
if (bindings == null) {
try {
- String bindingFile = System.getProperty("jline.keybindings",
- new File(System.getProperty("user.home",
- ".jlinebindings.properties")).getAbsolutePath());
+ String defaultBindingFile =
+ new File(System.getProperty("user.home"),
+ ".jlinebindings.properties").getAbsolutePath();
+ String bindingFile = System.getProperty("jline.keybindings", defaultBindingFile);
if (new File(bindingFile).isFile()) {
bindings = new FileInputStream(new File(bindingFile));
diff --git a/src/jline/src/main/java/jline/UnixTerminal.java b/src/jline/src/main/java/jline/UnixTerminal.java
index e9f76053ff..a873b40ff1 100644
--- a/src/jline/src/main/java/jline/UnixTerminal.java
+++ b/src/jline/src/main/java/jline/UnixTerminal.java
@@ -36,7 +36,6 @@ public class UnixTerminal extends Terminal {
public static final short DEL_THIRD = 51;
public static final short DEL_SECOND = 126;
- private Map terminfo;
private boolean echoEnabled;
private String ttyConfig;
private boolean backspaceDeleteSwitched = false;
@@ -44,7 +43,7 @@ public class UnixTerminal extends Terminal {
System.getProperty("jline.sttyCommand", "stty");
- String encoding = System.getProperty("input.encoding", "UTF-8");
+ String encoding = System.getProperty("jline.UnixTerminal.input.encoding", "UTF-8");
ReplayPrefixOneCharInputStream replayStream = new ReplayPrefixOneCharInputStream(encoding);
InputStreamReader replayReader;
@@ -58,14 +57,18 @@ public class UnixTerminal extends Terminal {
protected void checkBackspace(){
String[] ttyConfigSplit = ttyConfig.split(":|=");
-
- if (ttyConfigSplit.length < 7)
- return;
-
- if (ttyConfigSplit[6] == null)
+ String eof;
+
+ if ("gfmt1".equals(ttyConfigSplit[0]) && ttyConfigSplit.length > 20) {
+ // BSD style -g
+ eof = ttyConfigSplit[20];
+ } else if (ttyConfigSplit.length > 6 && ttyConfigSplit[6] != null) {
+ eof = ttyConfigSplit[6];
+ } else {
return;
+ }
- backspaceDeleteSwitched = ttyConfigSplit[6].equals("7f");
+ backspaceDeleteSwitched = eof.equals("7f");
}
/**