Sebastian Gniazdowski
4465b57f95
Better handling of "synhl" zstyle, via -T zstyle option
2016-11-05 11:44:50 +01:00
Sebastian Gniazdowski
9f6da82c9b
Merge branch 'temporary'
...
Two commits done in detached head state
2016-11-05 11:40:48 +01:00
Sebastian Gniazdowski
e6bc8ff0c0
Zstyle to configure whether to check paths for existence
...
parse.zsh -oo, after changes:
Running time: 1.5653990000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1557,37 4,45 99,99% 1199,04 3,43 76,98% -hsmw-highlight-process
2) 2800 294,91 0,11 18,93% 294,91 0,11 18,93% -hsmw-highlight-string
3) 1750 40,81 0,02 2,62% 40,81 0,02 2,62% -hsmw-highlight-check-path
4) 1400 22,61 0,02 1,45% 22,61 0,02 1,45% -hsmw-highlight-main-type
5) 1 0,12 0,12 0,01% 0,12 0,12 0,01% -hsmw-highlight-fill-option-variables
6) 1 0,02 0,02 0,00% 0,02 0,02 0,00% -hsmw-highlight-init
2016-11-05 11:36:39 +01:00
Sebastian Gniazdowski
175d0ae6d4
Updated README.md
2016-11-05 08:03:58 +01:00
Sebastian Gniazdowski
009d13369c
*highlight: Stop highlighting function name after () is typed
2016-11-03 13:17:37 +01:00
Sebastian Gniazdowski
64f47cec06
*highlight,*plugin.zsh: Highlight variables when 256 color terminal
2016-11-03 11:49:07 +01:00
Sebastian Gniazdowski
2bf4e674ba
*highlight: Optimize alias handling more
2016-11-02 18:52:19 +01:00
Sebastian Gniazdowski
daa2ec31b5
*highlight: One case less, no ;| fall through
...
15xx values are now very common, though the gains are low
parse.zsh -oo, after changes:
Running time: 1.5569020000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1549,43 4,43 99,99% 1194,57 3,41 77,09% -hsmw-highlight-process
2) 2800 294,41 0,11 19,00% 294,41 0,11 19,00% -hsmw-highlight-string
3) 1750 40,59 0,02 2,62% 40,59 0,02 2,62% -hsmw-highlight-check-path
4) 1400 19,87 0,01 1,28% 19,87 0,01 1,28% -hsmw-highlight-main-type
5) 1 0,09 0,09 0,01% 0,09 0,09 0,01% -hsmw-highlight-fill-option-variables
6) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-11-02 12:13:31 +01:00
Sebastian Gniazdowski
48a117959a
*highlight: Optimization: remove *-stack-pop call, squash conditions
...
parse.zsh -oo, after changes:
Running time: 1.5628500000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1555,27 4,44 100,00% 1199,16 3,43 77,10% -hsmw-highlight-process
2) 2800 295,11 0,11 18,97% 295,11 0,11 18,97% -hsmw-highlight-string
3) 1750 40,98 0,02 2,64% 40,98 0,02 2,64% -hsmw-highlight-check-path
4) 1400 20,01 0,01 1,29% 20,01 0,01 1,29% -hsmw-highlight-main-type
5) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
6) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-11-02 11:58:41 +01:00
Sebastian Gniazdowski
36aa966a09
*highlight: Prepare *-stack-pop for removal – shorter, compressed
2016-11-02 11:32:34 +01:00
Sebastian Gniazdowski
430ebac5a1
*highlight: Optimization: *-stack-pop doesn't need eval
...
parse.zsh -oo, after changes:
Running time: 1.5681030000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1560,69 4,46 99,99% 1199,03 3,43 76,82% -hsmw-highlight-process
2) 2800 294,91 0,11 18,90% 294,91 0,11 18,90% -hsmw-highlight-string
3) 1750 40,71 0,02 2,61% 40,71 0,02 2,61% -hsmw-highlight-check-path
4) 1400 20,87 0,01 1,34% 20,87 0,01 1,34% -hsmw-highlight-main-type
5) 350 5,17 0,01 0,33% 5,17 0,01 0,33% -hsmw-highlight-stack-pop
6) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-11-02 11:24:37 +01:00
Sebastian Gniazdowski
b4f69992ce
*highlight: Fix bug: no start_pos=$end_pos in comment short path
2016-11-02 10:55:10 +01:00
Sebastian Gniazdowski
2955679446
*highlight: Optimization: remove *-resolve-alias call
...
parse.zsh -oo, after changes:
Running time: 1.5813580000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1573,92 4,50 99,99% 1206,50 3,45 76,65% -hsmw-highlight-process
2) 2800 294,35 0,11 18,70% 294,35 0,11 18,70% -hsmw-highlight-string
3) 1750 40,74 0,02 2,59% 40,74 0,02 2,59% -hsmw-highlight-check-path
4) 1400 22,48 0,02 1,43% 22,48 0,02 1,43% -hsmw-highlight-main-type
5) 350 9,86 0,03 0,63% 9,86 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-11-02 09:44:02 +01:00
Sebastian Gniazdowski
ee30daa40b
*highlight: Correct order of checks in *-main-type
2016-11-02 09:42:31 +01:00
Sebastian Gniazdowski
1c56551a67
*highlight: Optimization: remove "return" keyword from *-main-type
...
parse.zsh -oo, before changes:
Running time: 1.5856540000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1577,71 4,51 99,99% 1205,79 3,45 76,42% -hsmw-highlight-process
2) 2800 295,44 0,11 18,72% 295,44 0,11 18,72% -hsmw-highlight-string
3) 1750 40,91 0,02 2,59% 40,91 0,02 2,59% -hsmw-highlight-check-path
4) 1400 25,58 0,02 1,62% 25,58 0,02 1,62% -hsmw-highlight-main-type
5) 350 9,98 0,03 0,63% 9,98 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,13 0,13 0,01% 0,13 0,13 0,01% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
parse.zsh -oo, after changes:
Running time: 1.5778930000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1570,41 4,49 99,99% 1205,58 3,44 76,76% -hsmw-highlight-process
2) 2800 293,42 0,10 18,68% 293,42 0,10 18,68% -hsmw-highlight-string
3) 1750 41,16 0,02 2,62% 41,16 0,02 2,62% -hsmw-highlight-check-path
4) 1400 20,32 0,01 1,29% 20,32 0,01 1,29% -hsmw-highlight-main-type
5) 350 9,93 0,03 0,63% 9,93 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-11-02 09:31:15 +01:00
Sebastian Gniazdowski
c918483dcc
Don't use ^K for kill-whole-line, it is to be used with context feature
2016-11-02 07:38:38 +01:00
Sebastian Gniazdowski
f039d9db63
hsmw: Optimization: switch from [ to [[
2016-11-02 07:35:01 +01:00
Sebastian Gniazdowski
2641b1da89
hsmw: Miracle optimization of query highlighting – via math function
...
For query A|B|C the time is 44 ms vs 502 ms – for the lines of code that
highlight words A,B,C.
No more Zaw license – the borrowed line of code is now removed, and
whole code is licensed under GPLv3 and MIT.
2016-11-01 19:43:55 +01:00
Sebastian Gniazdowski
58faf8d701
hsmw: Fix unclean region_highlight entries by join and split via \0 byte
2016-11-01 18:22:48 +01:00
Sebastian Gniazdowski
8f1d7f3f56
*highlight: Fix quoting detection – track backslashing of backslash
2016-11-01 08:36:22 +01:00
Sebastian Gniazdowski
32750b665e
*plugin.zsh: Default highlight: bg=17 – if $termcap[Co] == 256
2016-10-31 18:53:18 +01:00
Sebastian Gniazdowski
13e21cd4d6
hsmw: Optimize shifting indexes by offset – *highlight can take offset
2016-10-31 18:43:48 +01:00
Sebastian Gniazdowski
c92d64f944
Updated README.md
2016-10-31 14:56:28 +01:00
Sebastian Gniazdowski
964fdf7240
Match *highlight's support of \n in the outer hsmw code
2016-10-31 14:51:28 +01:00
Sebastian Gniazdowski
939b96bdd5
*highlight: Extension for HSMW: colorify two newline characters \n
...
This is a serious slow down for highlighting multi-line code not having
new lines replaced with '\n' – but such code can revert this patch, and
also should.
parse.zsh ./to-parse.zsh changes.out, after changes
Running time: 2.3695570000
num calls time self name
-----------------------------------------------------------------------------------
1) 1 2368,80 2368,80 99,99% 2222,89 2222,89 93,83% -hsmw-highlight-process
2) 754 124,15 0,16 5,24% 124,15 0,16 5,24% -hsmw-highlight-main-type
3) 395 12,22 0,03 0,52% 12,22 0,03 0,52% -hsmw-highlight-check-path
4) 22 5,99 0,27 0,25% 5,99 0,27 0,25% -hsmw-highlight-string
5) 6 2,60 0,43 0,11% 2,60 0,43 0,11% -hsmw-highlight-dollar-string
6) 46 0,95 0,02 0,04% 0,95 0,02 0,04% -hsmw-highlight-stack-pop
7) 1 0,15 0,15 0,01% 0,15 0,15 0,01% -hsmw-highlight-fill-option-variables
8) 1 0,02 0,02 0,00% 0,02 0,02 0,00% -hsmw-highlight-init
Line-wise input is also affected, but the feature is too good to resign
of it.
parse.zsh -oo, after changes:
Running time: 1.5768150000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1569,21 4,48 99,99% 1204,77 3,44 76,77% -hsmw-highlight-process
2) 2800 288,78 0,10 18,40% 288,78 0,10 18,40% -hsmw-highlight-string
3) 1750 41,03 0,02 2,61% 41,03 0,02 2,61% -hsmw-highlight-check-path
4) 1400 24,76 0,02 1,58% 24,76 0,02 1,58% -hsmw-highlight-main-type
5) 350 9,87 0,03 0,63% 9,87 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,10 0,10 0,01% 0,10 0,10 0,01% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-10-31 14:13:07 +01:00
Sebastian Gniazdowski
12e631cd29
*highlight: Optimization: short path for ';'
...
Values at 15xx level started to again appear quite much often.
parse.zsh -oo, after changes:
Running time: 1.5699860000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1561,31 4,46 99,99% 1197,84 3,42 76,71% -hsmw-highlight-process
2) 2800 288,12 0,10 18,45% 288,12 0,10 18,45% -hsmw-highlight-string
3) 1750 41,02 0,02 2,63% 41,02 0,02 2,63% -hsmw-highlight-check-path
4) 1400 24,56 0,02 1,57% 24,56 0,02 1,57% -hsmw-highlight-main-type
5) 350 9,77 0,03 0,63% 9,77 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,09 0,09 0,01% 0,09 0,09 0,01% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-10-31 13:53:42 +01:00
Sebastian Gniazdowski
f34e89afa6
*highlight: Optimization: eradicate impossible path
...
parse.zsh -oo, after changes:
Running time: 1.5890270000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1581,38 4,52 99,99% 1218,92 3,48 77,07% -hsmw-highlight-process
2) 2800 286,76 0,10 18,13% 286,76 0,10 18,13% -hsmw-highlight-string
3) 1750 40,76 0,02 2,58% 40,76 0,02 2,58% -hsmw-highlight-check-path
4) 1400 24,90 0,02 1,57% 24,90 0,02 1,57% -hsmw-highlight-main-type
5) 350 10,04 0,03 0,63% 10,04 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,08 0,08 0,00% 0,08 0,08 0,00% -hsmw-highlight-fill-option-variables
7) 1 0,02 0,02 0,00% 0,02 0,02 0,00% -hsmw-highlight-init
2016-10-31 13:44:15 +01:00
Sebastian Gniazdowski
bf306203f9
*highlight: Optimization and slowdown – short path for actual new lines
...
parse.zsh ./to-parse.zsh changes.out, before changes:
Running time: 2.2866420000
num calls time self name
-----------------------------------------------------------------------------------
1) 1 2286,16 2286,16 100,00% 2131,92 2131,92 93,25% -hsmw-highlight-process
2) 1270 133,34 0,10 5,83% 133,34 0,10 5,83% -hsmw-highlight-main-type
3) 395 12,09 0,03 0,53% 12,09 0,03 0,53% -hsmw-highlight-check-path
4) 22 5,48 0,25 0,24% 5,48 0,25 0,24% -hsmw-highlight-string
5) 6 2,36 0,39 0,10% 2,36 0,39 0,10% -hsmw-highlight-dollar-string
6) 46 0,97 0,02 0,04% 0,97 0,02 0,04% -hsmw-highlight-stack-pop
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
parse.zsh ./to-parse.zsh changes.out, after changes:
Running time: 2.1237140000
num calls time self name
-----------------------------------------------------------------------------------
1) 1 2123,18 2123,18 100,00% 1979,84 1979,84 93,25% -hsmw-highlight-process
2) 755 122,09 0,16 5,75% 122,09 0,16 5,75% -hsmw-highlight-main-type
3) 395 13,66 0,03 0,64% 13,66 0,03 0,64% -hsmw-highlight-check-path
4) 22 4,46 0,20 0,21% 4,46 0,20 0,21% -hsmw-highlight-string
5) 6 2,04 0,34 0,10% 2,04 0,34 0,10% -hsmw-highlight-dollar-string
6) 46 1,10 0,02 0,05% 1,10 0,02 0,05% -hsmw-highlight-stack-pop
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
./parse.zsh -oo, after changes:
Running time: 1.5936520000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1586,12 4,53 99,99% 1222,20 3,49 77,05% -hsmw-highlight-process
2) 2800 288,42 0,10 18,18% 288,42 0,10 18,18% -hsmw-highlight-string
3) 1750 40,57 0,02 2,56% 40,57 0,02 2,56% -hsmw-highlight-check-path
4) 1400 24,97 0,02 1,57% 24,97 0,02 1,57% -hsmw-highlight-main-type
5) 350 9,96 0,03 0,63% 9,96 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-10-31 13:36:55 +01:00
Sebastian Gniazdowski
8e8969095b
*highlight: Don't highlight paths existing in CDPATH, unless it's cd
2016-10-31 11:37:42 +01:00
Sebastian Gniazdowski
68348d09ee
*higlight,hsmw: No need for is-at-least – test for ZSH_ARGZERO instead
2016-10-31 11:17:00 +01:00
Sebastian Gniazdowski
3d2ac47621
*highlight: Properly handle tokens with :. Don't add future tokens
2016-10-30 14:28:38 +01:00
Sebastian Gniazdowski
35058d6632
*highlight: Optimization and logic change: no path at command position
...
parse.zsh -oo, after changes:
Running time: 1.5690220000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1561,42 4,46 99,99% 1191,03 3,40 76,27% -hsmw-highlight-process
2) 2800 288,00 0,10 18,44% 288,00 0,10 18,44% -hsmw-highlight-string
3) 1750 47,38 0,03 3,03% 47,38 0,03 3,03% -hsmw-highlight-check-path
4) 1400 25,15 0,02 1,61% 25,15 0,02 1,61% -hsmw-highlight-main-type
5) 350 9,86 0,03 0,63% 9,86 0,03 0,63% -hsmw-highlight-stack-pop
6) 1 0,11 0,11 0,01% 0,11 0,11 0,01% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-10-30 12:12:35 +01:00
Sebastian Gniazdowski
7b04ca7d8e
*highlight: Highlight ]]
2016-10-30 11:42:53 +01:00
Sebastian Gniazdowski
9b73595c01
*highlight: Correctly handle ';;' at command place
...
The slow down is effect of INTERACTIVE_COMMENTS
parse.zsh -oo, after changes:
Running time: 1.5990070000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1591,56 4,55 99,99% 1201,14 3,43 75,47% -hsmw-highlight-process
2) 2800 292,64 0,10 18,39% 292,64 0,10 18,39% -hsmw-highlight-string
3) 2450 62,28 0,03 3,91% 62,28 0,03 3,91% -hsmw-highlight-check-path
4) 1400 25,69 0,02 1,61% 25,69 0,02 1,61% -hsmw-highlight-main-type
5) 350 9,80 0,03 0,62% 9,80 0,03 0,62% -hsmw-highlight-stack-pop
6) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
2016-10-30 11:31:07 +01:00
Sebastian Gniazdowski
62c5fe444e
parse.zsh uses INTERACTIVE_COMMENTS, to-parse.zsh doesn't contain $()
2016-10-30 07:45:14 +01:00
Sebastian Gniazdowski
136d10e0bb
More distinct name of saved-widgets namespace
2016-10-29 17:46:53 +02:00
Sebastian Gniazdowski
aeda2e7be4
Fix for the OMZ workaround – zle-keymap-select doesn't have to exist
2016-10-29 17:44:36 +02:00
Sebastian Gniazdowski
25dae1d616
Workaround for OMZ vi-mode plugin
2016-10-29 17:40:30 +02:00
Sebastian Gniazdowski
2f6393dd0b
Set promptsubst
2016-10-29 14:13:00 +02:00
Sebastian Gniazdowski
45ac0f3e89
*highlight: Support :modifiers in variables, in strings – naive support
2016-10-28 10:11:27 +02:00
Sebastian Gniazdowski
619d9c7184
Only define _hsmw_main() once – check $functions before defining
2016-10-27 18:22:58 +02:00
Sebastian Gniazdowski
aee52a54ac
Properly bind ^W – trigger search recomputation
2016-10-27 18:18:46 +02:00
Sebastian Gniazdowski
1a599ee5f0
Use .kill-whole-line instead of .vi-kill-line
2016-10-27 18:15:19 +02:00
Sebastian Gniazdowski
58601435c8
Also bind ^U, as far I know Emacs clears line on that keys
2016-10-27 18:13:02 +02:00
Sebastian Gniazdowski
a44a52e3f2
Bind ^W, ^K – the latter to .vi-kill-line – .kill-line doesn't work
2016-10-27 18:10:56 +02:00
Sebastian Gniazdowski
6c556fc96c
Updated README.md
2016-10-27 16:40:13 +02:00
Sebastian Gniazdowski
2aa2362dba
Updated README.md
2016-10-27 16:39:15 +02:00
Sebastian Gniazdowski
56e289a40a
Architectural change: recompute highlighting only on page, query change
2016-10-27 16:34:07 +02:00
Sebastian Gniazdowski
ee0201a91b
Faster startup – use ${(@)history} when search pattern is empty
2016-10-27 15:50:18 +02:00
Sebastian Gniazdowski
619c27c2cf
Guard to not run trap handler twice while in .recursive-edit
2016-10-27 15:41:57 +02:00