blob: a2bed93cf4b986776eba605ce32af4f91fb03427 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
heading:Automatic{nbsp}commands[autocommands]
Autocommands are a way to automatically execute code when certain events
happen.
|:au| |:autocmd| +
||:au[tocmd]||
________________________________________________________________________________
Execute commands automatically on events.
[c]:au[tocmd][c] {event} {pat} {cmd}
Add {cmd} to the list of commands Vimperator will execute on {event} for a URL matching {pat}:
* [c]:autocmd[!][c] {events} {pat}: list/remove autocommands filtered by {events} and {pat}
* [c]:autocmd[!][c] {events}: list/remove autocommands matching {events}
* [c]:autocmd[!][c] * {pat}: list/remove autocommands matching {pat}
* [c]:autocmd[!][c]: list/remove all autocommands
Available {events}:
`--------------------`----------------------------------------
*BookmarkAdd* Triggered after a page is bookmarked
*ColorScheme* Triggered after a color scheme has been loaded
*DOMLoad* Triggered when a page's DOM content has fully loaded
*DownloadPost* Triggered when a download has completed
*Fullscreen* Triggered when the browser's fullscreen state changes
*LocationChange* Triggered when changing tabs or when navigating to a new location
*PageLoadPre* Triggered after a page load is initiated
*PageLoad* Triggered when a page gets (re)loaded/opened
*ShellCmdPost* Triggered after executing a shell command with [c]:![c]#{cmd}
*VimperatorEnter* Triggered after Firefox starts
*VimperatorLeavePre* Triggered before exiting Firefox, just before destroying each module
*VimperatorLeave* Triggered before exiting Firefox
--------------------------------------------------------------
{pat} is a regular expression, use .* if you want to match all URLs.
Note: This differs from Vim which uses a glob rather than a regexp for {pat}.
The following keywords are available where relevant:
`--------------`----------------------------------------------
*<url>* The URL against which the event was selected.
*<title>* The page, bookmark or download title.
*<tab>* The tab in which the event occurred.
*<tags>* The tags applied to <url>. Only for *BookmarkAdd*.
*<keyword>* The keywords applied to the bookmark. Only for *BookmarkAdd*.
*<icon>* The icon associated with <url>. Only for *BookmarkAdd*.
*<size>* The size of a downloaded file. Only for *DownloadPost*.
*<file>* The target destination of a download. Only for *DownloadPost*.
*<state>* The new fullscreen state. Only for *Fullscreen*.
*<name>* The color scheme name. Only for *ColorScheme*.
--------------------------------------------------------------
________________________________________________________________________________
|:doautoa| |:doautoall|
||:doautoa[ll] {event} [a][url][a]|| +
________________________________________________________________________________
Apply the autocommands matching the specified URL to all buffers. If no
[a][url][a] is specified use the current URL.
________________________________________________________________________________
|:do| |:doautocmd|
||:do[autocmd] {event} [a][url][a]|| +
________________________________________________________________________________
Apply the autocommands matching the specified URL to the current buffer. If no
[a][url][a] is specified use the current URL.
________________________________________________________________________________
section:Examples[autocmd-examples]
Enable _passthrough_ mode on all Google sites:
\{nbsp}[c]:autocmd LocationChange .* js modes.passAllKeys = /google\.com/.test(buffer.URL)[c]
Enable _passthrough_ mode on *some* Google sites:
\{nbsp}[c]:autocmd LocationChange .* js modes.passAllKeys = /(www|mail)\.google\.com/.test(buffer.URL)[c]
Set the filetype to mail when editing email at Gmail:
\{nbsp}[c]:autocmd LocationChange .* :set editor=gvim\ -f[c] +
\{nbsp}[c]:autocmd LocationChange mail\.google\.com :set editor="gvim -f -c 'set ft=mail'"[c]
// vim: set filetype=asciidoc:
|