本文整理了Java中org.jline.keymap.KeyMap.<init>()
方法的一些代码示例,展示了KeyMap.<init>()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。KeyMap.<init>()
方法的具体详情如下:
包路径:org.jline.keymap.KeyMap
类名称:KeyMap
方法名:<init>
暂无
代码示例来源:origin: apache/flink
@Override
protected KeyMap<RowOperation> getKeys() {
final KeyMap<RowOperation> keys = new KeyMap<>();
keys.setAmbiguousTimeout(200); // make ESC quicker
keys.bind(RowOperation.QUIT, "q", "Q", esc());
keys.bind(RowOperation.UP, "w", "W", key(client.getTerminal(), Capability.key_up));
keys.bind(RowOperation.DOWN, "s", "S", key(client.getTerminal(), Capability.key_down));
keys.bind(RowOperation.LEFT, "a", "A", key(client.getTerminal(), Capability.key_left));
keys.bind(RowOperation.RIGHT, "d", "D", key(client.getTerminal(), Capability.key_right));
return keys;
}
代码示例来源:origin: apache/flink
@Override
protected KeyMap<InputOperation> getKeys() {
final KeyMap<InputOperation> keys = new KeyMap<>();
keys.setUnicode(INSERT);
keys.setAmbiguousTimeout(200); // make ESC quicker
for (char i = 32; i < 256; i++) {
keys.bind(INSERT, Character.toString(i));
}
keys.bind(LEFT, key(client.getTerminal(), Capability.key_left));
keys.bind(RIGHT, key(client.getTerminal(), Capability.key_right));
keys.bind(BACKSPACE, del());
if (client.isPlainTerminal()) {
keys.bind(ENTER, "\r", "$");
keys.bind(QUIT, key(client.getTerminal(), Capability.key_exit), "!");
} else {
keys.bind(ENTER, "\r");
keys.bind(QUIT, esc());
}
return keys;
}
代码示例来源:origin: apache/flink
@Override
protected KeyMap<ResultChangelogOperation> getKeys() {
final KeyMap<ResultChangelogOperation> keys = new KeyMap<>();
keys.setAmbiguousTimeout(200); // make ESC quicker
keys.bind(ResultChangelogOperation.QUIT, "q", "Q", esc(), ctrl('c'));
keys.bind(ResultChangelogOperation.REFRESH, "r", "R", key(client.getTerminal(), Capability.key_f5));
keys.bind(ResultChangelogOperation.UP, "w", "W", key(client.getTerminal(), Capability.key_up));
keys.bind(ResultChangelogOperation.DOWN, "s", "S", key(client.getTerminal(), Capability.key_down));
keys.bind(ResultChangelogOperation.LEFT, "a", "A", key(client.getTerminal(), Capability.key_left));
keys.bind(ResultChangelogOperation.RIGHT, "d", "D", key(client.getTerminal(), Capability.key_right));
keys.bind(ResultChangelogOperation.OPEN, "o", "O", "\r");
keys.bind(ResultChangelogOperation.INC_REFRESH, "+");
keys.bind(ResultChangelogOperation.DEC_REFRESH, "-");
return keys;
}
代码示例来源:origin: apache/flink
@Override
protected KeyMap<ResultTableOperation> getKeys() {
final KeyMap<ResultTableOperation> keys = new KeyMap<>();
keys.setAmbiguousTimeout(200); // make ESC quicker
keys.bind(ResultTableOperation.QUIT, "q", "Q", esc(), ctrl('c'));
keys.bind(ResultTableOperation.REFRESH, "r", "R", key(client.getTerminal(), Capability.key_f5));
keys.bind(ResultTableOperation.UP, "w", "W", key(client.getTerminal(), Capability.key_up));
keys.bind(ResultTableOperation.DOWN, "s", "S", key(client.getTerminal(), Capability.key_down));
keys.bind(ResultTableOperation.LEFT, "a", "A", key(client.getTerminal(), Capability.key_left));
keys.bind(ResultTableOperation.RIGHT, "d", "D", key(client.getTerminal(), Capability.key_right));
keys.bind(ResultTableOperation.OPEN, "o", "O", "\r");
keys.bind(ResultTableOperation.GOTO, "g", "G");
keys.bind(ResultTableOperation.NEXT, "n", "N");
keys.bind(ResultTableOperation.PREV, "p", "P");
keys.bind(ResultTableOperation.LAST, "l", "L", key(client.getTerminal(), Capability.key_end));
keys.bind(ResultTableOperation.INC_REFRESH, "+");
keys.bind(ResultTableOperation.DEC_REFRESH, "-");
return keys;
}
代码示例来源:origin: org.jline/jline
@SuppressWarnings("unchecked")
private static <T> void bind(KeyMap<T> map, CharSequence keySeq, T function, boolean onlyIfNotBound) {
if (keySeq != null && keySeq.length() > 0) {
for (int i = 0; i < keySeq.length(); i++) {
char c = keySeq.charAt(i);
if (c >= map.mapping.length) {
return;
}
if (i < keySeq.length() - 1) {
if (!(map.mapping[c] instanceof KeyMap)) {
KeyMap<T> m = new KeyMap<>();
m.anotherKey = (T) map.mapping[c];
map.mapping[c] = m;
}
map = (KeyMap) map.mapping[c];
} else {
if (map.mapping[c] instanceof KeyMap) {
((KeyMap) map.mapping[c]).anotherKey = function;
} else {
Object op = map.mapping[c];
if (!onlyIfNotBound || op == null) {
map.mapping[c] = function;
}
}
}
}
}
}
代码示例来源:origin: apache/samza
private KeyMap<Action> bindActionKey() {
KeyMap<Action> keyMap = new KeyMap<>();
keyMap.bind(Action.QUIT, "Q", "q", ctrl('c'));
keyMap.bind(Action.SPACE, " ");
return keyMap;
}
代码示例来源:origin: org.jline/jline-builtins
private Operation getYNC(String message) {
String oldEditMessage = editMessage;
String oldEditBuffer = editBuffer.toString();
LinkedHashMap<String, String> oldShortcuts = shortcuts;
try {
editMessage = message;
editBuffer.setLength(0);
KeyMap<Operation> yncKeyMap = new KeyMap<>();
yncKeyMap.bind(Operation.YES, "y", "Y");
yncKeyMap.bind(Operation.NO, "n", "N");
yncKeyMap.bind(Operation.CANCEL, ctrl('C'));
shortcuts = new LinkedHashMap<>();
shortcuts.put(" Y", "Yes");
shortcuts.put(" N", "No");
shortcuts.put("^C", "Cancel");
display();
return readOperation(yncKeyMap);
} finally {
editMessage = oldEditMessage;
editBuffer.append(oldEditBuffer);
shortcuts = oldShortcuts;
}
}
代码示例来源:origin: org.jline/jline
private Operation getYNC(String message) {
String oldEditMessage = editMessage;
String oldEditBuffer = editBuffer.toString();
LinkedHashMap<String, String> oldShortcuts = shortcuts;
try {
editMessage = message;
editBuffer.setLength(0);
KeyMap<Operation> yncKeyMap = new KeyMap<>();
yncKeyMap.bind(Operation.YES, "y", "Y");
yncKeyMap.bind(Operation.NO, "n", "N");
yncKeyMap.bind(Operation.CANCEL, ctrl('C'));
shortcuts = new LinkedHashMap<>();
shortcuts.put(" Y", "Yes");
shortcuts.put(" N", "No");
shortcuts.put("^C", "Cancel");
display();
return readOperation(yncKeyMap);
} finally {
editMessage = oldEditMessage;
editBuffer.append(oldEditBuffer);
shortcuts = oldShortcuts;
}
}
代码示例来源:origin: org.jline/jline
protected KeyMap<Object> createEmptyKeyMap(String prefix) {
KeyMap<Object> keyMap = new KeyMap<>();
keyMap.setUnicode(Binding.SelfInsert);
keyMap.setNomatch(Binding.SelfInsert);
for (int i = 0; i < 255; i++) {
keyMap.bind(Binding.Discard, prefix + (char)(i));
}
keyMap.bind(Binding.Mouse, key(terminal, Capability.key_mouse));
return keyMap;
}
代码示例来源:origin: org.jline/jline
public KeyMap<Binding> menu() {
KeyMap<Binding> menu = new KeyMap<>();
bind(menu, MENU_COMPLETE, "\t");
bind(menu, REVERSE_MENU_COMPLETE, key(Capability.back_tab));
bind(menu, ACCEPT_LINE, "\r", "\n");
bindArrowKeys(menu);
return menu;
}
代码示例来源:origin: org.jline/jline
public KeyMap<Binding> safe() {
KeyMap<Binding> safe = new KeyMap<>();
bind(safe, SELF_INSERT, range("^@-^?"));
bind(safe, ACCEPT_LINE, "\r", "\n");
bind(safe, SEND_BREAK, ctrl('G'));
return safe;
}
代码示例来源:origin: org.jline/jline
public boolean beginPaste() {
final Object SELF_INSERT = new Object();
final Object END_PASTE = new Object();
KeyMap<Object> keyMap = new KeyMap<>();
keyMap.setUnicode(SELF_INSERT);
keyMap.setNomatch(SELF_INSERT);
keyMap.setAmbiguousTimeout(0);
keyMap.bind(END_PASTE, BRACKETED_PASTE_END);
StringBuilder sb = new StringBuilder();
while (true) {
Object b = bindingReader.readBinding(keyMap);
if (b == END_PASTE) {
break;
}
String s = getLastBinding();
if ("\r".equals(s)) {
s = "\n";
}
sb.append(s);
}
regionActive = RegionType.PASTE;
regionMark = getBuffer().cursor();
getBuffer().write(sb);
return true;
}
代码示例来源:origin: org.jline/jline-builtins
protected KeyMap<Object> createEmptyKeyMap(String prefix) {
KeyMap<Object> keyMap = new KeyMap<>();
keyMap.setUnicode(Binding.SelfInsert);
keyMap.setNomatch(Binding.SelfInsert);
for (int i = 0; i < 255; i++) {
keyMap.bind(Binding.Discard, prefix + (char)(i));
}
keyMap.bind(Binding.Mouse, key(terminal, Capability.key_mouse));
return keyMap;
}
代码示例来源:origin: org.jline/jline
public KeyMap<Binding> viOpp() {
KeyMap<Binding> viOpp = new KeyMap<>();
bind(viOpp, UP_LINE, key(Capability.key_up), "k");
bind(viOpp, DOWN_LINE, key(Capability.key_down), "j");
bind(viOpp, VI_CMD_MODE, esc());
return viOpp;
}
代码示例来源:origin: org.jline/jline-builtins
public TTop(Terminal terminal) {
this.terminal = terminal;
this.display = new Display(terminal, true);
this.bindingReader = new BindingReader(terminal.reader());
DecimalFormatSymbols dfs = new DecimalFormatSymbols();
dfs.setDecimalSeparator('.');
DecimalFormat perc = new DecimalFormat("0.00%", dfs);
register(STAT_TID, Right, "TID", o -> String.format("%3d", (Long) o));
register(STAT_NAME, Left, "NAME", padcut(40));
register(STAT_STATE, Left, "STATE", o -> o.toString().toLowerCase());
register(STAT_BLOCKED_TIME, Right, "T-BLOCKED", o -> millis((Long) o));
register(STAT_BLOCKED_COUNT, Right, "#-BLOCKED", Object::toString);
register(STAT_WAITED_TIME, Right, "T-WAITED", o -> millis((Long) o));
register(STAT_WAITED_COUNT, Right, "#-WAITED", Object::toString);
register(STAT_LOCK_NAME, Left, "LOCK-NAME", Object::toString);
register(STAT_LOCK_OWNER_ID, Right, "LOCK-OWNER-ID", id -> ((Long) id) >= 0 ? id.toString() : "");
register(STAT_LOCK_OWNER_NAME, Left, "LOCK-OWNER-NAME", name -> name != null ? name.toString() : "");
register(STAT_USER_TIME, Right, "T-USR", o -> nanos((Long) o));
register(STAT_CPU_TIME, Right, "T-CPU", o -> nanos((Long) o));
register(STAT_USER_TIME_PERC, Right, "%-USR", perc::format);
register(STAT_CPU_TIME_PERC, Right, "%-CPU", perc::format);
keys = new KeyMap<>();
bindKeys(keys);
}
代码示例来源:origin: org.jline/jline
public TTop(Terminal terminal) {
this.terminal = terminal;
this.display = new Display(terminal, true);
this.bindingReader = new BindingReader(terminal.reader());
DecimalFormatSymbols dfs = new DecimalFormatSymbols();
dfs.setDecimalSeparator('.');
DecimalFormat perc = new DecimalFormat("0.00%", dfs);
register(STAT_TID, Right, "TID", o -> String.format("%3d", (Long) o));
register(STAT_NAME, Left, "NAME", padcut(40));
register(STAT_STATE, Left, "STATE", o -> o.toString().toLowerCase());
register(STAT_BLOCKED_TIME, Right, "T-BLOCKED", o -> millis((Long) o));
register(STAT_BLOCKED_COUNT, Right, "#-BLOCKED", Object::toString);
register(STAT_WAITED_TIME, Right, "T-WAITED", o -> millis((Long) o));
register(STAT_WAITED_COUNT, Right, "#-WAITED", Object::toString);
register(STAT_LOCK_NAME, Left, "LOCK-NAME", Object::toString);
register(STAT_LOCK_OWNER_ID, Right, "LOCK-OWNER-ID", id -> ((Long) id) >= 0 ? id.toString() : "");
register(STAT_LOCK_OWNER_NAME, Left, "LOCK-OWNER-NAME", name -> name != null ? name.toString() : "");
register(STAT_USER_TIME, Right, "T-USR", o -> nanos((Long) o));
register(STAT_CPU_TIME, Right, "T-CPU", o -> nanos((Long) o));
register(STAT_USER_TIME_PERC, Right, "%-USR", perc::format);
register(STAT_CPU_TIME_PERC, Right, "%-CPU", perc::format);
keys = new KeyMap<>();
bindKeys(keys);
}
代码示例来源:origin: org.jline/jline
public KeyMap<Binding> visual() {
KeyMap<Binding> visual = new KeyMap<>();
bind(visual, UP_LINE, key(Capability.key_up), "k");
bind(visual, DOWN_LINE, key(Capability.key_down), "j");
bind(visual, this::deactivateRegion, esc());
bind(visual, EXCHANGE_POINT_AND_MARK, "o");
bind(visual, PUT_REPLACE_SELECTION, "p");
bind(visual, VI_DELETE, "x");
bind(visual, VI_OPER_SWAP_CASE, "~");
return visual;
}
代码示例来源:origin: org.jline/jline
void read() {
KeyMap<Operation> readKeyMap = new KeyMap<>();
readKeyMap.setUnicode(Operation.INSERT);
for (char i = 32; i < 256; i++) {
代码示例来源:origin: org.jline/jline-builtins
void search() throws IOException {
KeyMap<Operation> searchKeyMap = new KeyMap<>();
searchKeyMap.setUnicode(Operation.INSERT);
for (char i = 'A'; i <= 'Z'; i++) {
代码示例来源:origin: org.jline/jline
public KeyMap<Binding> viInsertion() {
KeyMap<Binding> viins = new KeyMap<>();
bind(viins, SELF_INSERT, range("^@-^_"));
bind(viins, LIST_CHOICES, ctrl('D'));
内容来源于网络,如有侵权,请联系作者删除!