Commit Graph

43 Commits

Author SHA1 Message Date
6c3792bc08 Add key for toogling numlock handling
Keypad will generate keycodes when keypad application mode is enabled. It
can cause problems with some programs like vi, which operates in such
mode.

This patch change by default don't generate the keycodes never, but this
behaviour can be changed using the combination Alt + NumLock.
---
 config.def.h |   34 ++++++++++++++++++----------------
 st.c         |   17 +++++++++++++++--
 2 files changed, 33 insertions(+), 18 deletions(-)
2012-11-25 09:23:02 +01:00
d5ce1d8267 Restoring the Alt + Backspace functionality. Thanks Brandon Invergo! 2012-11-19 17:22:32 +01:00
3af3fa75e6 Add application cursor sequences for Home
The commit 'Fixing some key issues with mc' fix the problem where mc didn't
recognize home key because the generated code and the terminfo entry were
different (terminfo khome = \E[1~ but generates \033[H).

Home key in ansi mode should generate the sequence CUP (\033[H) to 0,0 (home
position), but it is also interesting generate a application code which
identifies the key. Real vt520 only generates the ansi sequence CUP, linux
console generates only the application code \033[1~, xterm generates CUP in
ansi mode and \033OH in cursor application mode, rxvt only generates the
application code \033[7~.

This patch sets CUP in ansi mode and \033[1~ in cursor application mode, so
it can be used in both modes and the application mode value is similar to
near values (insert = \033[2~, Prior = \033[5~, Next = \033[6~, End =
\033[4~, Supr = \033[3).
---
 config.def.h |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
2012-11-16 11:32:17 +01:00
73f1c46926 Fixing some key issues with mc. Thanks nsz! 2012-11-16 05:43:00 +01:00
1ab9dcfd4b Optimizing the key lookup to the X11 function key. It is still possible to
remap other keys.
2012-11-15 20:19:35 +01:00
12541fda56 Making all function keys accessible. 2012-11-15 20:03:18 +01:00
75fca06968 Adding support for XK_F35. 2012-11-15 20:00:46 +01:00
8a2e12bc8b Fixing the return and keypad enter sent characters. Terminals produce \r. And
some minor style changes.
2012-11-15 16:26:50 +01:00
9b35e8f544 The crlf mode was reversed. 2012-11-15 15:57:01 +01:00
6d608c98e5 Fixing Return in non-crlf mode. 2012-11-15 15:54:34 +01:00
c88ca5b743 Use XK_ANY_MOD instead of XK_NO_MOD in key definition
Usually terminal emulators don't generate any sequence for a combination
they don't have registered, for example Shift + Next, but st behavior
previous to the keyboard patch generates the sequence without the modifier,
in this example Next. This patch uses the XK_ANY_MOD in order to get this
same behaviour.
---
 config.def.h |  114 ++++++++++++++++++++++++++++++----------------------------
 1 file changed, 59 insertions(+), 55 deletions(-)
2012-11-15 15:36:20 +01:00
bcbd832110 Fix tab key
When Shift + Tab is pressed X server send the event XK_ISO_Left_Tab with
ShiftMask, so this is the entry we need in config.def.h

This patch also revert the previous patch for this issue because it breaks
the keyboard.
---
 config.def.h |    2 +-
 st.c         |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
2012-11-14 11:14:29 +01:00
7db9bbf7ee The style inquisition was here again. 2012-11-13 20:13:39 +01:00
48b0f22c46 Add missed key definitions
This patch adds the keys for the keypad (in both modes, application mode or
ansi mode) and function keys. It uses the same convention than xterm and
instead of using the XK_Fxx values it generates them using F1-F12 and
modifiers. For example:

   F1 -> ^[OP
   F1 + Shift = F13 -> ^[[1;2P
   F1 + Control = F25 -> ^[[1;5P
   F1 + Mod2 = F37 -> ^[[1;6P
   F1 + Mod1 = F49 -> ^[[1;3P
   F1 + Mod3 = F61 -> ^[[1;4P

It is also important notice than the terminfo capability kIC (shifted insert
key) only can be generated using the keypad keyboard, because the shorcut
for selection paste is using the same combination.

After this path the number of elements in the Key array becomes high, and
maybe a sequencial search is not enough efficient now.
---
 TODO         |    6 +---
 config.def.h |  102 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 st.info      |   70 ++++++++++++++++++++++++++++++++++++++--
 3 files changed, 169 insertions(+), 9 deletions(-)
2012-11-13 20:05:02 +01:00
1415d79028 Add control and meta combinations for arrow keys
Since there isn't any terminfo capability for control and meta modifiers for
arrows keys it is necessary use the same that almost terminal emulators use,
because there are a lot of programs which have these codes hardcoded.

This cause also that shift combinations are also changed, but in this case
this is not a problem since there are terminfo capabilities for them. After
this patch shift-up and shift-down continue not working in emacs with
TERM=st, but they work with TERM=xterm, so it is possible some other changes
are necessary in the terminfo entry.
---
 config.def.h |   16 ++++++++++++----
 st.info      |    8 ++++----
 2 files changed, 16 insertions(+), 8 deletions(-)
2012-11-13 20:04:54 +01:00
6c90a490fb Remove hardcoded keys form kpress
Some keys were in the Key array while others were hardcoded in
kpress().This cause some problems with some keys which can generate more of
one string based in the configuration of the terminal.
---
 config.def.h |   70 ++++++++++++++++++++++++++++++++++++++++-----------------
 st.c         |   71 +++++++++++++++++++++++++---------------------------------
 2 files changed, 79 insertions(+), 62 deletions(-)
2012-11-13 20:04:45 +01:00
6c84ff7f73 Move Shift + Insert to shortcut
Shift + Insert is used like a hot key for paste the selection, so it is more
logical move it to shortcut array instead of having special code for it.
---
 config.def.h |    1 +
 st.c         |   13 +++----------
 2 files changed, 4 insertions(+), 10 deletions(-)
2012-11-13 20:04:39 +01:00
80150c86af Fixing an out-of-bound bug in the selection code. Thanks Szabolczs Nagy! 2012-11-03 03:24:22 +01:00
dcf0955466 Moving to the dwm config.h variable usage. 2012-11-02 19:56:02 +01:00
cb9d92ce51 Removing the now senseless comment in config.def.h. Thanks to bnwe! 2012-10-28 14:13:39 +01:00
53eda6d525 Adding a more flexible fontstring handling, shortcuts and a zoom function. 2012-10-28 13:25:53 +01:00
0ddbb0c6cc Turning on antialias by default really makes it more unreadable. Maybe if once
the majority has bigger screens, this can be turned on by default again.
Thanks pancake, for the hint.
2012-10-05 11:07:55 +02:00
639104946a This adds the fontcache dependency to try something out. Additionally the
invert mode now works as expected. In the config.def.h autohint is set to
false, so the fonts are drawn correctly, without any overlapping.
2012-10-04 22:59:45 +02:00
b5982e284d Removing the now obsolete definitions from the config.def.h file. 2012-09-30 20:23:45 +02:00
1ad0b11415 Switching to Liberation Mono as default solely because of line drawing. A next
patch to fix the font symbols in all fonts should make it easier to choose a
better font.
2012-09-26 20:21:59 +02:00
23d1b03d4e Implementing line drawing right. 2012-09-26 20:21:08 +02:00
33eaeacaa4 Changing the default font to DejaVu Sans Mono, which is more appealing and
activating antialiasing.
2012-09-24 14:01:59 +02:00
a0b0b8f694 Initial Xft support for st. More to follow. 2012-09-24 10:20:45 +02:00
3f482f4758 config.def.h: typo in comment. 2012-09-18 19:13:19 +02:00
dccba949b5 Implementing italic-bold. This will require an increase of the avgWdth. 2012-09-14 19:46:07 +02:00
f5c6bcf03a Implement italic font support. 2012-09-05 21:48:26 +02:00
1ec0515e75 fix default color overwriten bug. 2012-02-16 00:10:32 +01:00
adf5d2e32a show dark cursor when unfocused. 2012-02-15 19:33:48 +01:00
62d380947e document possible configuration. 2012-02-15 19:11:07 +01:00
7c350025b2 no palette limit (thx Nick) 2011-10-06 21:32:34 +02:00
54adc7ee50 fix custom key handling. 2011-08-14 17:13:59 +02:00
e4dd367a4f selection clicks, shift+arrow keys, fast(er) redraw, key mask in config.h (thx Magnus Leuthner) 2011-04-22 00:18:53 +02:00
cabc2bed68 fix insert key, terminfo and changed TERM back to st. (thx Ondrej Martinek) 2011-01-23 12:30:01 +01:00
db3a27c8e6 utf8 support! print text in delicious unicode greatness! all hail to the glorious Damian Okrasa for the patch!
TERM set back to xterm.
changed default fonts.
Note: drawing is now (even) slower.
2010-11-18 01:00:04 +01:00
a997fea2c0 set terminal colors to xterm default ones. 2010-09-02 22:35:55 +02:00
e87203dea6 removed gfx chars not present in xterm acsc. 2010-09-02 21:59:05 +02:00
f2482b322a added correct line drawing characters for default font. 2010-09-01 00:30:39 +02:00
ca1f6675a1 fix build
use config.def.h mechanism
add SHELL in config.h
2010-08-30 23:49:15 +02:00