updated for version 7.0c13
This commit is contained in:
@ -28,13 +28,14 @@ endif
|
|||||||
:hi Visual gui=none guifg=khaki guibg=olivedrab cterm=reverse
|
:hi Visual gui=none guifg=khaki guibg=olivedrab cterm=reverse
|
||||||
:hi WarningMsg guifg=salmon ctermfg=1
|
:hi WarningMsg guifg=salmon ctermfg=1
|
||||||
:hi String guifg=SkyBlue ctermfg=darkcyan
|
:hi String guifg=SkyBlue ctermfg=darkcyan
|
||||||
:hi Comment guifg=DimGrey ctermfg=darkgrey
|
:hi Comment term=bold ctermfg=11 guifg=#80a0ff
|
||||||
:hi Constant guifg=#ffa0a0 ctermfg=brown
|
:hi Constant guifg=#ffa0a0 ctermfg=brown
|
||||||
:hi Special guifg=DarkKhaki ctermfg=brown
|
:hi Special guifg=green ctermfg=brown
|
||||||
:hi Identifier guifg=salmon ctermfg=darkred
|
:hi Identifier guifg=salmon ctermfg=red
|
||||||
:hi Include guifg=darkred ctermfg=darkred
|
:hi Include guifg=red ctermfg=red
|
||||||
:hi PreProc guifg=olivedrab ctermfg=red
|
:hi PreProc guifg=red guibg=white ctermfg=red
|
||||||
:hi Operator guifg=CornflowerBlue ctermfg=darkcyan
|
:hi Operator guifg=Red ctermfg=Red
|
||||||
|
":hi Operator guifg=CornflowerBlue ctermfg=darkcyan
|
||||||
:hi Define guifg=gold gui=bold ctermfg=yellow
|
:hi Define guifg=gold gui=bold ctermfg=yellow
|
||||||
:hi Type guifg=darkkhaki ctermfg=2
|
:hi Type guifg=darkkhaki ctermfg=2
|
||||||
:hi Function guifg=navajowhite ctermfg=brown
|
:hi Function guifg=navajowhite ctermfg=brown
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*change.txt* For Vim version 7.0c. Last change: 2006 Mar 16
|
*change.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -1542,6 +1542,9 @@ found here: |sort()|.
|
|||||||
< To sort on the text at virtual column 10 (thus
|
< To sort on the text at virtual column 10 (thus
|
||||||
ignoring the difference between tabs and spaces): >
|
ignoring the difference between tabs and spaces): >
|
||||||
:sort /.*\%10v/
|
:sort /.*\%10v/
|
||||||
|
< To sort on the first number in the line, no matter
|
||||||
|
what is in front of it: >
|
||||||
|
:sort /.*\ze\d/
|
||||||
<
|
<
|
||||||
Note that using ":sort" with ":global" doesn't sort the matching lines, it's
|
Note that using ":sort" with ":global" doesn't sort the matching lines, it's
|
||||||
quite useless.
|
quite useless.
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*eval.txt* For Vim version 7.0c. Last change: 2006 Apr 06
|
*eval.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -1549,29 +1549,33 @@ eval( {string}) any evaluate {string} into its value
|
|||||||
eventhandler( ) Number TRUE if inside an event handler
|
eventhandler( ) Number TRUE if inside an event handler
|
||||||
executable( {expr}) Number 1 if executable {expr} exists
|
executable( {expr}) Number 1 if executable {expr} exists
|
||||||
exists( {expr}) Number TRUE if {expr} exists
|
exists( {expr}) Number TRUE if {expr} exists
|
||||||
|
extend({expr1}, {expr2} [, {expr3}])
|
||||||
|
List/Dict insert items of {expr2} into {expr1}
|
||||||
expand( {expr}) String expand special keywords in {expr}
|
expand( {expr}) String expand special keywords in {expr}
|
||||||
filereadable( {file}) Number TRUE if {file} is a readable file
|
filereadable( {file}) Number TRUE if {file} is a readable file
|
||||||
|
filewritable( {file}) Number TRUE if {file} is a writable file
|
||||||
filter( {expr}, {string}) List/Dict remove items from {expr} where
|
filter( {expr}, {string}) List/Dict remove items from {expr} where
|
||||||
{string} is 0
|
{string} is 0
|
||||||
finddir( {name}[, {path}[, {count}]])
|
finddir( {name}[, {path}[, {count}]])
|
||||||
String Find directory {name} in {path}
|
String find directory {name} in {path}
|
||||||
findfile( {name}[, {path}[, {count}]])
|
findfile( {name}[, {path}[, {count}]])
|
||||||
String Find file {name} in {path}
|
String find file {name} in {path}
|
||||||
filewritable( {file}) Number TRUE if {file} is a writable file
|
|
||||||
fnamemodify( {fname}, {mods}) String modify file name
|
fnamemodify( {fname}, {mods}) String modify file name
|
||||||
foldclosed( {lnum}) Number first line of fold at {lnum} if closed
|
foldclosed( {lnum}) Number first line of fold at {lnum} if closed
|
||||||
foldclosedend( {lnum}) Number last line of fold at {lnum} if closed
|
foldclosedend( {lnum}) Number last line of fold at {lnum} if closed
|
||||||
foldlevel( {lnum}) Number fold level at {lnum}
|
foldlevel( {lnum}) Number fold level at {lnum}
|
||||||
foldtext( ) String line displayed for closed fold
|
foldtext( ) String line displayed for closed fold
|
||||||
|
foldtextresult( {lnum}) String text for closed fold at {lnum}
|
||||||
foreground( ) Number bring the Vim window to the foreground
|
foreground( ) Number bring the Vim window to the foreground
|
||||||
function( {name}) Funcref reference to function {name}
|
function( {name}) Funcref reference to function {name}
|
||||||
|
garbagecollect() none free memory, breaking cyclic references
|
||||||
get( {list}, {idx} [, {def}]) any get item {idx} from {list} or {def}
|
get( {list}, {idx} [, {def}]) any get item {idx} from {list} or {def}
|
||||||
get( {dict}, {key} [, {def}]) any get item {key} from {dict} or {def}
|
get( {dict}, {key} [, {def}]) any get item {key} from {dict} or {def}
|
||||||
getbufline( {expr}, {lnum} [, {end}])
|
getbufline( {expr}, {lnum} [, {end}])
|
||||||
List lines {lnum} to {end} of buffer {expr}
|
List lines {lnum} to {end} of buffer {expr}
|
||||||
|
getbufvar( {expr}, {varname}) any variable {varname} in buffer {expr}
|
||||||
getchar( [expr]) Number get one character from the user
|
getchar( [expr]) Number get one character from the user
|
||||||
getcharmod( ) Number modifiers for the last typed character
|
getcharmod( ) Number modifiers for the last typed character
|
||||||
getbufvar( {expr}, {varname}) variable {varname} in buffer {expr}
|
|
||||||
getcmdline() String return the current command-line
|
getcmdline() String return the current command-line
|
||||||
getcmdpos() Number return cursor position in command-line
|
getcmdpos() Number return cursor position in command-line
|
||||||
getcmdtype() String return the current command-line type
|
getcmdtype() String return the current command-line type
|
||||||
@ -1590,7 +1594,7 @@ getreg( [{regname} [, 1]]) String contents of register
|
|||||||
getregtype( [{regname}]) String type of register
|
getregtype( [{regname}]) String type of register
|
||||||
getwinposx() Number X coord in pixels of GUI Vim window
|
getwinposx() Number X coord in pixels of GUI Vim window
|
||||||
getwinposy() Number Y coord in pixels of GUI Vim window
|
getwinposy() Number Y coord in pixels of GUI Vim window
|
||||||
getwinvar( {nr}, {varname}) variable {varname} in window {nr}
|
getwinvar( {nr}, {varname}) any variable {varname} in window {nr}
|
||||||
glob( {expr}) String expand file wildcards in {expr}
|
glob( {expr}) String expand file wildcards in {expr}
|
||||||
globpath( {path}, {expr}) String do glob({expr}) for all dirs in {path}
|
globpath( {path}, {expr}) String do glob({expr}) for all dirs in {path}
|
||||||
has( {feature}) Number TRUE if feature {feature} supported
|
has( {feature}) Number TRUE if feature {feature} supported
|
||||||
@ -1611,6 +1615,7 @@ index( {list}, {expr} [, {start} [, {ic}]])
|
|||||||
input( {prompt} [, {text} [, {completion}]])
|
input( {prompt} [, {text} [, {completion}]])
|
||||||
String get input from the user
|
String get input from the user
|
||||||
inputdialog( {p} [, {t} [, {c}]]) String like input() but in a GUI dialog
|
inputdialog( {p} [, {t} [, {c}]]) String like input() but in a GUI dialog
|
||||||
|
inputlist( {textlist}) Number let the user pick from a choice list
|
||||||
inputrestore() Number restore typeahead
|
inputrestore() Number restore typeahead
|
||||||
inputsave() Number save and clear typeahead
|
inputsave() Number save and clear typeahead
|
||||||
inputsecret( {prompt} [, {text}]) String like input() but hiding the text
|
inputsecret( {prompt} [, {text}]) String like input() but hiding the text
|
||||||
@ -1689,6 +1694,7 @@ setcmdpos( {pos}) Number set cursor position in command-line
|
|||||||
setline( {lnum}, {line}) Number set line {lnum} to {line}
|
setline( {lnum}, {line}) Number set line {lnum} to {line}
|
||||||
setloclist( {nr}, {list}[, {action}])
|
setloclist( {nr}, {list}[, {action}])
|
||||||
Number modify location list using {list}
|
Number modify location list using {list}
|
||||||
|
setpos( {expr}, {list}) none set the {expr} position to {list}
|
||||||
setqflist( {list}[, {action}]) Number modify quickfix list using {list}
|
setqflist( {list}[, {action}]) Number modify quickfix list using {list}
|
||||||
setreg( {n}, {v}[, {opt}]) Number set register to value and type
|
setreg( {n}, {v}[, {opt}]) Number set register to value and type
|
||||||
setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val}
|
setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val}
|
||||||
@ -2730,7 +2736,7 @@ getfontname([{name}]) *getfontname()*
|
|||||||
font name. If not then an empty string is returned.
|
font name. If not then an empty string is returned.
|
||||||
Otherwise the actual font name is returned, or {name} if the
|
Otherwise the actual font name is returned, or {name} if the
|
||||||
GUI does not support obtaining the real name.
|
GUI does not support obtaining the real name.
|
||||||
Only works when the GUI is running, thus not you your vimrc or
|
Only works when the GUI is running, thus not in your vimrc or
|
||||||
gvimrc file. Use the |GUIEnter| autocommand to use this
|
gvimrc file. Use the |GUIEnter| autocommand to use this
|
||||||
function just after the GUI has started.
|
function just after the GUI has started.
|
||||||
Note that the GTK 2 GUI accepts any font name, thus checking
|
Note that the GTK 2 GUI accepts any font name, thus checking
|
||||||
|
|||||||
@ -171,6 +171,7 @@ Versions ~
|
|||||||
|version4.txt| Differences between Vim version 3.0 and 4.x
|
|version4.txt| Differences between Vim version 3.0 and 4.x
|
||||||
|version5.txt| Differences between Vim version 4.6 and 5.x
|
|version5.txt| Differences between Vim version 4.6 and 5.x
|
||||||
|version6.txt| Differences between Vim version 5.7 and 6.x
|
|version6.txt| Differences between Vim version 5.7 and 6.x
|
||||||
|
|version7.txt| Differences between Vim version 6.4 and 7.x
|
||||||
*sys-file-list*
|
*sys-file-list*
|
||||||
Remarks about specific systems ~
|
Remarks about specific systems ~
|
||||||
|os_390.txt| OS/390 Unix
|
|os_390.txt| OS/390 Unix
|
||||||
@ -195,12 +196,6 @@ Standard plugins ~
|
|||||||
|pi_zip.txt| Zip archive explorer
|
|pi_zip.txt| Zip archive explorer
|
||||||
|
|
||||||
LOCAL ADDITIONS: *local-additions*
|
LOCAL ADDITIONS: *local-additions*
|
||||||
|cecutil.txt| DrChip's Utilities Jun 11, 2004
|
|
||||||
|example.txt| Example for a locally added help file
|
|
||||||
|matchit.txt| Extended "%" matching
|
|
||||||
|test.txt| Testing the h<>lp c<>mm<6D>nd n<>w
|
|
||||||
|typecorr.txt| Plugin for correcting typing mistakes
|
|
||||||
|helpp.txt| Dummy line to avoid an error message
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
*bars* Bars example
|
*bars* Bars example
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*intro.txt* For Vim version 7.0c. Last change: 2005 Sep 01
|
*intro.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -94,13 +94,15 @@ mention that.
|
|||||||
There are several mailing lists for Vim:
|
There are several mailing lists for Vim:
|
||||||
<vim@vim.org>
|
<vim@vim.org>
|
||||||
For discussions about using existing versions of Vim: Useful mappings,
|
For discussions about using existing versions of Vim: Useful mappings,
|
||||||
questions, answers, where to get a specific version, etc.
|
questions, answers, where to get a specific version, etc. There are
|
||||||
|
quite a few people watching this list and answering questions, also
|
||||||
|
for beginners. Don't hesitate to ask your question here.
|
||||||
<vim-dev@vim.org> *vim-dev* *vimdev*
|
<vim-dev@vim.org> *vim-dev* *vimdev*
|
||||||
For discussions about changing Vim: New features, porting, patches,
|
For discussions about changing Vim: New features, porting, patches,
|
||||||
beta-test versions, etc.
|
beta-test versions, etc.
|
||||||
<vim-announce@vim.org> *vim-announce*
|
<vim-announce@vim.org> *vim-announce*
|
||||||
Announcements about new versions of Vim; also for beta-test versions
|
Announcements about new versions of Vim; also for beta-test versions
|
||||||
and ports to different systems.
|
and ports to different systems. This is a read-only list.
|
||||||
<vim-multibyte@vim.org> *vim-multibyte*
|
<vim-multibyte@vim.org> *vim-multibyte*
|
||||||
For discussions about using and improving the multi-byte aspects of
|
For discussions about using and improving the multi-byte aspects of
|
||||||
Vim.
|
Vim.
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*options.txt* For Vim version 7.0c. Last change: 2006 Apr 05
|
*options.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -1442,6 +1442,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
{not in Vi}
|
{not in Vi}
|
||||||
Number of screen lines to use for the command-line. Helps avoiding
|
Number of screen lines to use for the command-line. Helps avoiding
|
||||||
|hit-enter| prompts.
|
|hit-enter| prompts.
|
||||||
|
The value of this option is stored with the tab page, so that each tab
|
||||||
|
page can have a different value.
|
||||||
|
|
||||||
*'cmdwinheight'* *'cwh'*
|
*'cmdwinheight'* *'cwh'*
|
||||||
'cmdwinheight' 'cwh' number (default 7)
|
'cmdwinheight' 'cwh' number (default 7)
|
||||||
@ -6522,8 +6524,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
|||||||
'tagrelative' 'tr' boolean (Vim default: on, Vi default: off)
|
'tagrelative' 'tr' boolean (Vim default: on, Vi default: off)
|
||||||
global
|
global
|
||||||
{not in Vi}
|
{not in Vi}
|
||||||
If on and using a tag file in another directory, file names in that
|
If on and using a tags file in another directory, file names in that
|
||||||
tag file are relative to the directory where the tag file is.
|
tags file are relative to the directory where the tags file is.
|
||||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||||
set and to the Vim default value when 'compatible' is reset.
|
set and to the Vim default value when 'compatible' is reset.
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*tabpage.txt* For Vim version 7.0c. Last change: 2006 Apr 06
|
*tabpage.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -205,6 +205,8 @@ files.
|
|||||||
|
|
||||||
Variables local to a tab page start with "t:". |tabpage-variable|
|
Variables local to a tab page start with "t:". |tabpage-variable|
|
||||||
|
|
||||||
|
Currently there is only one option local to a tab page: 'cmdheight'.
|
||||||
|
|
||||||
The TabLeave and TabEnter autocommand events can be used to do something when
|
The TabLeave and TabEnter autocommand events can be used to do something when
|
||||||
switching from one tab page to another. The exact order depends on what you
|
switching from one tab page to another. The exact order depends on what you
|
||||||
are doing. When creating a new tab page this works as if you create a new
|
are doing. When creating a new tab page this works as if you create a new
|
||||||
|
|||||||
@ -5611,6 +5611,7 @@ hebrew hebrew.txt /*hebrew*
|
|||||||
hebrew.txt hebrew.txt /*hebrew.txt*
|
hebrew.txt hebrew.txt /*hebrew.txt*
|
||||||
help various.txt /*help*
|
help various.txt /*help*
|
||||||
help-context help.txt /*help-context*
|
help-context help.txt /*help-context*
|
||||||
|
help-tags tags 1
|
||||||
help-translated various.txt /*help-translated*
|
help-translated various.txt /*help-translated*
|
||||||
help-xterm-window various.txt /*help-xterm-window*
|
help-xterm-window various.txt /*help-xterm-window*
|
||||||
help.txt help.txt /*help.txt*
|
help.txt help.txt /*help.txt*
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 7.0c. Last change: 2006 Apr 07
|
*todo.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -33,7 +33,7 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
|||||||
Handle postponed prefix with COMPOUNDPERMITFLAG or COMPOUNDFORBIDFLAG.
|
Handle postponed prefix with COMPOUNDPERMITFLAG or COMPOUNDFORBIDFLAG.
|
||||||
WFP_COMPPERMIT and WFP_COMPFORBID
|
WFP_COMPPERMIT and WFP_COMPFORBID
|
||||||
|
|
||||||
":mkspell" still takes too long in Hungarian dictionary.
|
":mkspell" still takes much too long in Hungarian dictionary.
|
||||||
|
|
||||||
Use ~/tmp/hungarian*.txt to test dictionary with.
|
Use ~/tmp/hungarian*.txt to test dictionary with.
|
||||||
|
|
||||||
@ -1805,6 +1805,11 @@ Shared libraries:
|
|||||||
|
|
||||||
|
|
||||||
Tags:
|
Tags:
|
||||||
|
9 With ":set tags=./tags,../tags" and a tag appears in both tags files it is
|
||||||
|
added twice. Requires figuring out the actual file name for each found
|
||||||
|
match. Remove tag_fname from the match and combine it with the fname in
|
||||||
|
the match (without expanding or other things that take time). When
|
||||||
|
'tagrelative' is off tag_fname isn't needed at all.
|
||||||
7 Can CTRL-] (jump to tag) include a following "." and "->" to restrict the
|
7 Can CTRL-] (jump to tag) include a following "." and "->" to restrict the
|
||||||
number of possible matches? Check tags file for an item that has members.
|
number of possible matches? Check tags file for an item that has members.
|
||||||
(Flemming Madsen)
|
(Flemming Madsen)
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*usr_41.txt* For Vim version 7.0c. Last change: 2006 Mar 24
|
*usr_41.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
VIM USER MANUAL - by Bram Moolenaar
|
VIM USER MANUAL - by Bram Moolenaar
|
||||||
|
|
||||||
@ -577,15 +577,19 @@ used for. You can find an alphabetical list here: |functions|. Use CTRL-] on
|
|||||||
the function name to jump to detailed help on it.
|
the function name to jump to detailed help on it.
|
||||||
|
|
||||||
String manipulation:
|
String manipulation:
|
||||||
char2nr() get ASCII value of a character
|
|
||||||
nr2char() get a character by its ASCII value
|
nr2char() get a character by its ASCII value
|
||||||
|
char2nr() get ASCII value of a character
|
||||||
|
str2nr() convert a string to a number
|
||||||
|
printf() format a string according to % items
|
||||||
escape() escape characters in a string with a '\'
|
escape() escape characters in a string with a '\'
|
||||||
|
tr() translate characters from one set to another
|
||||||
strtrans() translate a string to make it printable
|
strtrans() translate a string to make it printable
|
||||||
tolower() turn a string to lowercase
|
tolower() turn a string to lowercase
|
||||||
toupper() turn a string to uppercase
|
toupper() turn a string to uppercase
|
||||||
match() position where a pattern matches in a string
|
match() position where a pattern matches in a string
|
||||||
matchend() position where a pattern match ends in a string
|
matchend() position where a pattern match ends in a string
|
||||||
matchstr() match of a pattern in a string
|
matchstr() match of a pattern in a string
|
||||||
|
matchlist() like matchstr() and also return submatches
|
||||||
stridx() first index of a short string in a long string
|
stridx() first index of a short string in a long string
|
||||||
strridx() last index of a short string in a long string
|
strridx() last index of a short string in a long string
|
||||||
strlen() length of a string
|
strlen() length of a string
|
||||||
@ -594,6 +598,9 @@ String manipulation:
|
|||||||
strpart() get part of a string
|
strpart() get part of a string
|
||||||
expand() expand special keywords
|
expand() expand special keywords
|
||||||
iconv() convert text from one encoding to another
|
iconv() convert text from one encoding to another
|
||||||
|
byteidx() byte index of a character in a string
|
||||||
|
repeat() repeat a string multiple times
|
||||||
|
eval() evaluate a string expression
|
||||||
|
|
||||||
List manipulation:
|
List manipulation:
|
||||||
get() get an item without error for wrong index
|
get() get an item without error for wrong index
|
||||||
@ -611,12 +618,14 @@ List manipulation:
|
|||||||
reverse() reverse the order of a List
|
reverse() reverse the order of a List
|
||||||
split() split a String into a List
|
split() split a String into a List
|
||||||
join() join List items into a String
|
join() join List items into a String
|
||||||
|
range() return a List with a sequence of numbers
|
||||||
string() String representation of a List
|
string() String representation of a List
|
||||||
call() call a function with List as arguments
|
call() call a function with List as arguments
|
||||||
index() index of a value in a List
|
index() index of a value in a List
|
||||||
max() maximum value in a List
|
max() maximum value in a List
|
||||||
min() minimum value in a List
|
min() minimum value in a List
|
||||||
count() count number of times a value appears in a List
|
count() count number of times a value appears in a List
|
||||||
|
repeat() repeat a List multiple times
|
||||||
|
|
||||||
Dictionary manipulation:
|
Dictionary manipulation:
|
||||||
get() get an entry without an error for a wrong key
|
get() get an entry without an error for a wrong key
|
||||||
@ -637,15 +646,30 @@ Dictionary manipulation:
|
|||||||
min() minimum value in a Dictionary
|
min() minimum value in a Dictionary
|
||||||
count() count number of times a value appears
|
count() count number of times a value appears
|
||||||
|
|
||||||
Working with text in the current buffer:
|
Variables:
|
||||||
byte2line() get line number at a specific byte count
|
type() type of a variable
|
||||||
line2byte() byte count at a specific line
|
islocked() check if a variable is locked
|
||||||
|
function() get a Funcref for a function name
|
||||||
|
getbufvar() get a variable value from a specific buffer
|
||||||
|
setbufvar() set a variable in a specific buffer
|
||||||
|
getwinvar() get a variable value from a specific window
|
||||||
|
setwinvar() set a variable in a specific window
|
||||||
|
garbagecollect() possibly free memory
|
||||||
|
|
||||||
|
Cursor and mark position:
|
||||||
col() column number of the cursor or a mark
|
col() column number of the cursor or a mark
|
||||||
virtcol() screen column of the cursor or a mark
|
virtcol() screen column of the cursor or a mark
|
||||||
line() line number of the cursor or mark
|
line() line number of the cursor or mark
|
||||||
wincol() window column number of the cursor
|
wincol() window column number of the cursor
|
||||||
winline() window line number of the cursor
|
winline() window line number of the cursor
|
||||||
cursor() position the cursor at a line/column
|
cursor() position the cursor at a line/column
|
||||||
|
getpos() get position of cursor, mark, etc.
|
||||||
|
setpos() set position of cursor, mark, etc.
|
||||||
|
byte2line() get line number at a specific byte count
|
||||||
|
line2byte() byte count at a specific line
|
||||||
|
diff_filler() get the number of filler lines above a line
|
||||||
|
|
||||||
|
Working with text in the current buffer:
|
||||||
getline() get a line or list of lines from the buffer
|
getline() get a line or list of lines from the buffer
|
||||||
setline() replace a line in the buffer
|
setline() replace a line in the buffer
|
||||||
append() append line or list of lines in the buffer
|
append() append line or list of lines in the buffer
|
||||||
@ -658,24 +682,27 @@ Working with text in the current buffer:
|
|||||||
searchpos() find a match for a pattern
|
searchpos() find a match for a pattern
|
||||||
searchpair() find the other end of a start/skip/end
|
searchpair() find the other end of a start/skip/end
|
||||||
searchpairpos() find the other end of a start/skip/end
|
searchpairpos() find the other end of a start/skip/end
|
||||||
|
searchdecl() search for the declaration of a name
|
||||||
|
|
||||||
System functions and manipulation of files:
|
System functions and manipulation of files:
|
||||||
browse() put up a file requester
|
|
||||||
glob() expand wildcards
|
glob() expand wildcards
|
||||||
globpath() expand wildcards in a number of directories
|
globpath() expand wildcards in a number of directories
|
||||||
|
findfile() find a file in a list of directories
|
||||||
|
finddir() find a directory in a list of directories
|
||||||
resolve() find out where a shortcut points to
|
resolve() find out where a shortcut points to
|
||||||
fnamemodify() modify a file name
|
fnamemodify() modify a file name
|
||||||
|
pathshorten() shorten directory names in a path
|
||||||
|
simplify() simplify a path without changing its meaning
|
||||||
executable() check if an executable program exists
|
executable() check if an executable program exists
|
||||||
filereadable() check if a file can be read
|
filereadable() check if a file can be read
|
||||||
filewritable() check if a file can be written to
|
filewritable() check if a file can be written to
|
||||||
mkdir() create a new directory
|
getfperm() get the permissions of a file
|
||||||
|
getftype() get the kind of a file
|
||||||
isdirectory() check if a directory exists
|
isdirectory() check if a directory exists
|
||||||
getcwd() get the current working directory
|
|
||||||
getfsize() get the size of a file
|
getfsize() get the size of a file
|
||||||
getftime() get last modification time of a file
|
getcwd() get the current working directory
|
||||||
localtime() get current time
|
|
||||||
strftime() convert time to a string
|
|
||||||
tempname() get the name of a temporary file
|
tempname() get the name of a temporary file
|
||||||
|
mkdir() create a new directory
|
||||||
delete() delete a file
|
delete() delete a file
|
||||||
rename() rename a file
|
rename() rename a file
|
||||||
system() get the result of a shell command
|
system() get the result of a shell command
|
||||||
@ -683,6 +710,13 @@ System functions and manipulation of files:
|
|||||||
readfile() read a file into a List of lines
|
readfile() read a file into a List of lines
|
||||||
writefile() write a List of lines into a file
|
writefile() write a List of lines into a file
|
||||||
|
|
||||||
|
Date and Time:
|
||||||
|
getftime() get last modification time of a file
|
||||||
|
localtime() get current time in seconds
|
||||||
|
strftime() convert time to a string
|
||||||
|
reltime() get the current or elapsed time accurately
|
||||||
|
reltimestr() convert reltime() result to a string
|
||||||
|
|
||||||
Buffers, windows and the argument list:
|
Buffers, windows and the argument list:
|
||||||
argc() number of entries in the argument list
|
argc() number of entries in the argument list
|
||||||
argidx() current position in the argument list
|
argidx() current position in the argument list
|
||||||
@ -692,27 +726,52 @@ Buffers, windows and the argument list:
|
|||||||
bufloaded() check if a buffer exists and is loaded
|
bufloaded() check if a buffer exists and is loaded
|
||||||
bufname() get the name of a specific buffer
|
bufname() get the name of a specific buffer
|
||||||
bufnr() get the buffer number of a specific buffer
|
bufnr() get the buffer number of a specific buffer
|
||||||
|
tabpagebuflist() return List of buffers in a tab page
|
||||||
|
tabpagenr() get the number of a tab page
|
||||||
|
tabpagewinnr() like winnr() for a specified tab page
|
||||||
winnr() get the window number for the current window
|
winnr() get the window number for the current window
|
||||||
bufwinnr() get the window number of a specific buffer
|
bufwinnr() get the window number of a specific buffer
|
||||||
winbufnr() get the buffer number of a specific window
|
winbufnr() get the buffer number of a specific window
|
||||||
getbufline() get a list of lines from the specified buffer
|
getbufline() get a list of lines from the specified buffer
|
||||||
getbufvar() get a variable value from a specific buffer
|
|
||||||
setbufvar() set a variable in a specific buffer
|
Command line:
|
||||||
getwinvar() get a variable value from a specific window
|
getcmdline() get the current command line
|
||||||
setwinvar() set a variable in a specific window
|
getcmdpos() get position of the cursor in the command line
|
||||||
|
setcmdpos() set position of the cursor in the command line
|
||||||
|
getcmdtype() return the current command-line type
|
||||||
|
|
||||||
|
Quickfix and location lists:
|
||||||
|
getqflist() list of quickfix errors
|
||||||
|
setqflist() modify a quickfix list
|
||||||
|
getloclist() list of location list items
|
||||||
|
setloclist() modify a location list
|
||||||
|
|
||||||
|
Insert mode completion:
|
||||||
|
complete() set found matches
|
||||||
|
complete_add() add to found matches
|
||||||
|
complete_check() check if completion should be aborted
|
||||||
|
pumvisible() check if the popup menu is displayed
|
||||||
|
|
||||||
Folding:
|
Folding:
|
||||||
foldclosed() check for a closed fold at a specific line
|
foldclosed() check for a closed fold at a specific line
|
||||||
foldclosedend() like foldclosed() but return the last line
|
foldclosedend() like foldclosed() but return the last line
|
||||||
foldlevel() check for the fold level at a specific line
|
foldlevel() check for the fold level at a specific line
|
||||||
foldtext() generate the line displayed for a closed fold
|
foldtext() generate the line displayed for a closed fold
|
||||||
|
foldtextresult() get the text displayed for a closed fold
|
||||||
|
|
||||||
Syntax highlighting:
|
Syntax and highlighting:
|
||||||
hlexists() check if a highlight group exists
|
hlexists() check if a highlight group exists
|
||||||
hlID() get ID of a highlight group
|
hlID() get ID of a highlight group
|
||||||
synID() get syntax ID at a specific position
|
synID() get syntax ID at a specific position
|
||||||
synIDattr() get a specific attribute of a syntax ID
|
synIDattr() get a specific attribute of a syntax ID
|
||||||
synIDtrans() get translated syntax ID
|
synIDtrans() get translated syntax ID
|
||||||
|
diff_hlID() get highlight ID for diff mode at a position
|
||||||
|
matcharg() get info about |:match| arguments
|
||||||
|
|
||||||
|
Spelling:
|
||||||
|
spellbadword() locate badly spelled word at or after cursor
|
||||||
|
spellsuggest() return suggested spelling corrections
|
||||||
|
soundfold() return the sound-a-like equivalent of a word
|
||||||
|
|
||||||
History:
|
History:
|
||||||
histadd() add an item to a history
|
histadd() add an item to a history
|
||||||
@ -721,15 +780,23 @@ History:
|
|||||||
histnr() get highest index of a history list
|
histnr() get highest index of a history list
|
||||||
|
|
||||||
Interactive:
|
Interactive:
|
||||||
|
browse() put up a file requester
|
||||||
|
browsedir() put up a directory requester
|
||||||
confirm() let the user make a choice
|
confirm() let the user make a choice
|
||||||
getchar() get a character from the user
|
getchar() get a character from the user
|
||||||
getcharmod() get modifiers for the last typed character
|
getcharmod() get modifiers for the last typed character
|
||||||
input() get a line from the user
|
input() get a line from the user
|
||||||
|
inputlist() let the user pick an entry from a list
|
||||||
inputsecret() get a line from the user without showing it
|
inputsecret() get a line from the user without showing it
|
||||||
inputdialog() get a line from the user in a dialog
|
inputdialog() get a line from the user in a dialog
|
||||||
inputsave() save and clear typeahead
|
inputsave() save and clear typeahead
|
||||||
inputrestore() restore typeahead
|
inputrestore() restore typeahead
|
||||||
|
|
||||||
|
GUI:
|
||||||
|
getfontname() get name of current font being used
|
||||||
|
getwinposx() X position of the GUI Vim window
|
||||||
|
getwinposy() Y position of the GUI Vim window
|
||||||
|
|
||||||
Vim server:
|
Vim server:
|
||||||
serverlist() return the list of server names
|
serverlist() return the list of server names
|
||||||
remote_send() send command characters to a Vim server
|
remote_send() send command characters to a Vim server
|
||||||
@ -740,8 +807,14 @@ Vim server:
|
|||||||
foreground() move the Vim window to the foreground
|
foreground() move the Vim window to the foreground
|
||||||
remote_foreground() move the Vim server window to the foreground
|
remote_foreground() move the Vim server window to the foreground
|
||||||
|
|
||||||
|
Window size and position:
|
||||||
|
winheight() get height of a specific window
|
||||||
|
winwidth() get width of a specific window
|
||||||
|
winrestcmd() return command to restore window sizes
|
||||||
|
winsaveview() get view of current window
|
||||||
|
winrestview() restore saved view of current window
|
||||||
|
|
||||||
Various:
|
Various:
|
||||||
type() type of a variable
|
|
||||||
mode() get current editing mode
|
mode() get current editing mode
|
||||||
visualmode() last visual mode used
|
visualmode() last visual mode used
|
||||||
hasmapto() check if a mapping exists
|
hasmapto() check if a mapping exists
|
||||||
@ -749,23 +822,20 @@ Various:
|
|||||||
maparg() get rhs of a mapping
|
maparg() get rhs of a mapping
|
||||||
exists() check if a variable, function, etc. exists
|
exists() check if a variable, function, etc. exists
|
||||||
has() check if a feature is supported in Vim
|
has() check if a feature is supported in Vim
|
||||||
getqflist() list of quickfix errors
|
changenr() return number of most recent change
|
||||||
getloclist() list of location list items
|
|
||||||
cscope_connection() check if a cscope connection exists
|
cscope_connection() check if a cscope connection exists
|
||||||
did_filetype() check if a FileType autocommand was used
|
did_filetype() check if a FileType autocommand was used
|
||||||
eventhandler() check if invoked by an event handler
|
eventhandler() check if invoked by an event handler
|
||||||
getwinposx() X position of the GUI Vim window
|
|
||||||
getwinposy() Y position of the GUI Vim window
|
|
||||||
winheight() get height of a specific window
|
|
||||||
winwidth() get width of a specific window
|
|
||||||
libcall() call a function in an external library
|
libcall() call a function in an external library
|
||||||
libcallnr() idem, returning a number
|
libcallnr() idem, returning a number
|
||||||
|
|
||||||
getreg() get contents of a register
|
getreg() get contents of a register
|
||||||
getregtype() get type of a register
|
getregtype() get type of a register
|
||||||
setqflist() modify a quickfix list
|
|
||||||
setloclist() modify a location list
|
|
||||||
setreg() set contents and type of a register
|
setreg() set contents and type of a register
|
||||||
|
|
||||||
taglist() get list of matching tags
|
taglist() get list of matching tags
|
||||||
|
tagfiles() get a list of tags files
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
*41.7* Defining a function
|
*41.7* Defining a function
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
*version7.txt* For Vim version 7.0c. Last change: 2006 Apr 07
|
*version7.txt* For Vim version 7.0c. Last change: 2006 Apr 09
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@ -2411,4 +2411,7 @@ needed on the spell file.
|
|||||||
|
|
||||||
glob('/dir/\$ABC/*') didn't work.
|
glob('/dir/\$ABC/*') didn't work.
|
||||||
|
|
||||||
|
When using several tab pages and changing 'cmdheight' the display could become
|
||||||
|
messed up. Now store the value of 'cmdheight' separately for each tab page.
|
||||||
|
|
||||||
vim:tw=78:ts=8:ft=help:norl:
|
vim:tw=78:ts=8:ft=help:norl:
|
||||||
|
|||||||
@ -9,9 +9,8 @@ elseif exists("b:current_syntax")
|
|||||||
finish
|
finish
|
||||||
else
|
else
|
||||||
endif
|
endif
|
||||||
"% 12 Errors?
|
"% 11 Errors?
|
||||||
syn match sisu_error contains=sisu_contain,sisu_control,sisu_markpara,sisu_mark,sisu_content_alt,sisu_error_wspace "<![^ei]\S\+!>"
|
syn match sisu_error contains=sisu_contain,sisu_control,sisu_markpara,sisu_mark,sisu_content_alt,sisu_error_wspace "<![^ei]\S\+!>"
|
||||||
"% 11 Expression Substitution: and Backslash Notation
|
|
||||||
"% 10 Markers: Endnote Identifiers, Pagebreaks etc.:
|
"% 10 Markers: Endnote Identifiers, Pagebreaks etc.:
|
||||||
if !exists("sisu_no_identifiers")
|
if !exists("sisu_no_identifiers")
|
||||||
syn match sisu_mark_endnote "\~^"
|
syn match sisu_mark_endnote "\~^"
|
||||||
@ -19,20 +18,16 @@ if !exists("sisu_no_identifiers")
|
|||||||
syn match sisu_break "<br>\|<br />"
|
syn match sisu_break "<br>\|<br />"
|
||||||
syn match sisu_control "<p>\|</p>\|<p />\|<:p[bn]>"
|
syn match sisu_control "<p>\|</p>\|<p />\|<:p[bn]>"
|
||||||
syn match sisu_html "<center>\|</center>"
|
syn match sisu_html "<center>\|</center>"
|
||||||
syn match sisu_markpara "^_\([12]\*\?\|\*\)\s\+"
|
|
||||||
syn match sisu_markpara "#[ 1]\|_# "
|
|
||||||
syn match sisu_marktail "[~-]#"
|
syn match sisu_marktail "[~-]#"
|
||||||
syn match sisu_html "<td>\|<td \|<tr>\|</td>\|</tr>\|<table>\|<table \|</table>"
|
syn match sisu_html "<td>\|<td \|<tr>\|</td>\|</tr>\|<table>\|<table \|</table>"
|
||||||
syn match sisu_control "\""
|
syn match sisu_control "\""
|
||||||
syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"he=e-1
|
syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"
|
||||||
|
syn match sisu_number "[0-9a-f]\{32\}\|[0-9a-f]\{64\}"
|
||||||
"metaverse specific
|
"metaverse specific
|
||||||
syn match sisu_ocn "<\~\d\+;\w\d\+;\w\d\+>"
|
syn match sisu_ocn "<\~\d\+;\w\d\+;\w\d\+>"
|
||||||
syn match sisu_digest "<[0-9a-f]\{32\}:[0-9a-f]\{32\}>\|<[0-9a-f]\{32\}>"
|
|
||||||
syn match sisu_digest "<[0-9a-f]\{64\}:[0-9a-f]\{64\}>\|<[0-9a-f]\{64\}>"
|
|
||||||
syn match sisu_marktail "<\~#>"
|
syn match sisu_marktail "<\~#>"
|
||||||
syn match sisu_markpara "<:i[12]>"
|
syn match sisu_markpara "<:i[12]>"
|
||||||
syn match sisu_link " \*\~\S\+"
|
syn match sisu_link " \*\~\S\+"
|
||||||
syn match sisu_action "^<<.\+"
|
|
||||||
syn match sisu_action "^<:insert\d\+>"
|
syn match sisu_action "^<:insert\d\+>"
|
||||||
syn match sisu_contain "<:e>"
|
syn match sisu_contain "<:e>"
|
||||||
endif
|
endif
|
||||||
@ -46,24 +41,25 @@ syn match sisu_error "<a href\|</a>]" contains=sisu_error
|
|||||||
"% 7 Simple Enclosed Markup:
|
"% 7 Simple Enclosed Markup:
|
||||||
" Simple Markup:
|
" Simple Markup:
|
||||||
"% header
|
"% header
|
||||||
syn region sisu_header contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="0\~" end="$"
|
syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^0\~\(\S\+\|[^-]\)" end="$"
|
||||||
"% headings
|
"% headings
|
||||||
syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_ocn,sisu_digest,sisu_error,sisu_error_wspace,sisu_error_spell matchgroup=sisu_heading start="[1-8]\~[^-]" end="$"
|
syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_ocn,sisu_error,sisu_error_wspace,sisu_error_spell matchgroup=sisu_structure start="^[1-8]\~\(\S\+\|[^-]\)" end="$"
|
||||||
"% grouped text
|
"% grouped text
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="table{.\+" end="}table"
|
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="table{.\+" end="}table"
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="{t\~h}" end="$$"
|
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="{t\~h}" end="$$"
|
||||||
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="^\(alt\|group\|poem\){" end="^}\(alt\|group\|poem\)"
|
syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="^\(alt\|group\|poem\){" end="^}\(alt\|group\|poem\)"
|
||||||
syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="^code{" end="^}code"
|
syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="^code{" end="^}code"
|
||||||
"% endnotes
|
"% endnotes
|
||||||
syn region sisu_content_endnote contains=sisu_digest,sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_error_spell,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\~{" end="}\~" skip="\n"
|
syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_error_spell,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\~{" end="}\~" skip="\n"
|
||||||
syn region sisu_content_endnote contains=sisu_strikeout,sisu_number,sisu_control,sisu_link,sisu_identifier,sisu_error,sisu_error_wspace,sisu_error_spell,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\^\~" end="\n\n"
|
syn region sisu_content_endnote contains=sisu_strikeout,sisu_number,sisu_control,sisu_link,sisu_identifier,sisu_error,sisu_error_wspace,sisu_error_spell,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\^\~" end="\n\n"
|
||||||
"% images
|
"% images
|
||||||
syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_control,sisu_error,sisu_error_spell matchgroup=sisu_link start="{" end="}\(\(http://\|\.\./\)\S\+\|image\)" oneline
|
syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_link start="{" end="}\(\(http://\|\.\./\)\S\+\|image\)" oneline
|
||||||
"syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_link start="{" end="}\(\(http://\|\.\./\)\S\+\|image\)" oneline
|
"% line operations
|
||||||
"sisu_identifier fix
|
syn region sisu_link contains=sisu_error,sisu_error_wspace,sisu_error_spell matchgroup=sisu_action start="^<<\s*|[a-zA-Z0-9^._-]\+|@|[a-zA-Z0-9^._-]\+|"rs=s+2 end="$"
|
||||||
""syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_link start="{" end="}\(http\S\+\|image\)" oneline
|
syn region sisu_control contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace,sisu_error_spell matchgroup=sisu_control start="\(\(^\| \)!_ \|<:b>\)" end="$"
|
||||||
|
syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace,sisu_error_spell matchgroup=sisu_markpara start="^_\([12]\*\?\|\*\) " end="$"
|
||||||
|
syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace,sisu_error_spell matchgroup=sisu_markpara start="^\(#[ 1]\|_# \)" end="$"
|
||||||
"% font face curly brackets
|
"% font face curly brackets
|
||||||
syn region sisu_control contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_spell matchgroup=sisu_control start="\(\(^\| \)!_ \|<:b>\)" end="$"
|
|
||||||
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="\*{" end="}\*"
|
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="\*{" end="}\*"
|
||||||
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="!{" end="}!"
|
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="!{" end="}!"
|
||||||
syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="_{" end="}_"
|
syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="_{" end="}_"
|
||||||
@ -72,23 +68,19 @@ syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_
|
|||||||
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="\^{" end="}\^"
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start="\^{" end="}\^"
|
||||||
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start=",{" end="},"
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_fontface start=",{" end="},"
|
||||||
syn region sisu_strikeout contains=sisu_error matchgroup=sisu_fontface start="-{" end="}-"
|
syn region sisu_strikeout contains=sisu_error matchgroup=sisu_fontface start="-{" end="}-"
|
||||||
syn region sisu_control contains=sisu_error matchgroup=sisu_content_alt start="<b>" end="</b>" oneline
|
|
||||||
syn region sisu_control contains=sisu_error matchgroup=sisu_content_alt start="<em>" end="</em>" oneline
|
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="<u>" end="</u>" oneline
|
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="<i>" end="</i>" oneline
|
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="<ins>" end="</ins>" skip="\\\\\|\\'" oneline
|
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="<del>" end="</del>" oneline
|
|
||||||
syn region sisu_html contains=sisu_error contains=sisu_strikeout matchgroup=sisu_contain start="<a href=\".\{-}\">" end="</a>" oneline
|
syn region sisu_html contains=sisu_error contains=sisu_strikeout matchgroup=sisu_contain start="<a href=\".\{-}\">" end="</a>" oneline
|
||||||
"% single words bold italicise etc. "workon
|
"% single words bold italicise etc. "workon
|
||||||
syn region sisu_control contains=sisu_error matchgroup=sisu_control start="\([ (]\|^\)\*[^\|{\n\~\\]"hs=e-1 end="\*"he=e-0 skip="[a-zA-Z0-9']" oneline
|
syn region sisu_control contains=sisu_error matchgroup=sisu_control start="\([ (]\|^\)\*[^\|{\n\~\\]"hs=e-1 end="\*"he=e-0 skip="[a-zA-Z0-9']" oneline
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="\([ ]\|^\)/[^{ \|\n\\]"hs=e-1 end="/\[ \.\]" skip="[a-zA-Z0-9']" oneline
|
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="\([ ]\|^\)/[^{ \|\n\\]"hs=e-1 end="/\[ \.\]" skip="[a-zA-Z0-9']" oneline
|
||||||
"syn region sisu_underline matchgroup=sisu_underline start="\([ (]\|^\)_\([^ !*{\\][\w]\|[^12][^*]\)"hs=e-2 end="\(_\([ )\.]\|$\)\| \)"he=e-1 skip="[a-zA-Z0-9']" oneline
|
|
||||||
"% html
|
"% html
|
||||||
syn region sisu_number contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_contain start="<b>" end="</b>" skip="\n"
|
syn region sisu_number contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_html start="<b>" end="</b>" skip="\n" oneline
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_contain start="<i>" end="</i>" skip="\n"
|
syn region sisu_number contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_html start="<em>" end="</em>" oneline
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_contain start="<u>" end="</u>" skip="\n"
|
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_html start="<i>" end="</i>" skip="\n" oneline
|
||||||
|
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_html start="<u>" end="</u>" skip="\n" oneline
|
||||||
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell,sisu_mark matchgroup=sisu_html start="<ins>" end="</ins>" skip="\\\\\|\\'" oneline
|
||||||
|
syn region sisu_identifier contains=sisu_error matchgroup=sisu_html start="<del>" end="</del>" oneline
|
||||||
"% misc
|
"% misc
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="\^[^{\|\n\\]" end="\^[ ,.;:'})\\\n]" skip="[a-zA-Z0-9']" oneline
|
syn region sisu_identifier contains=sisu_error matchgroup=sisu_fontface start="\^[^ {\|\n\\]"rs=s+1 end="\^[ ,.;:'})\\\n]" skip="[a-zA-Z0-9']" oneline
|
||||||
"% metaverse
|
"% metaverse
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="<:Table.\{-}>" end="<:Table[-_]end>"
|
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_spell matchgroup=sisu_contain start="<:Table.\{-}>" end="<:Table[-_]end>"
|
||||||
syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="<:code>" end="<:code[-_]end>"
|
syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="<:code>" end="<:code[-_]end>"
|
||||||
@ -101,8 +93,7 @@ else " not Expensive
|
|||||||
syn region sisu_content_alt matchgroup=sisu_control start="^\s*def\s" matchgroup=NONE end="[?!]\|\>" skip="\.\|\(::\)" oneline
|
syn region sisu_content_alt matchgroup=sisu_control start="^\s*def\s" matchgroup=NONE end="[?!]\|\>" skip="\.\|\(::\)" oneline
|
||||||
endif " Expensive?
|
endif " Expensive?
|
||||||
"% 5 Headers: and Headings (Document Instructions)
|
"% 5 Headers: and Headings (Document Instructions)
|
||||||
"syn match sisu_header contains=sisu_error,sisu_error_wspace,sisu_mark "0\~.*"
|
syn match sisu_comment "^% .*\|^%% .*"
|
||||||
syn match sisu_comment contains=sisu_error "^% .*\|^%% .*"
|
|
||||||
syn match sisu_control contains=sisu_error,sisu_error_wspace "4\~! \S\+"
|
syn match sisu_control contains=sisu_error,sisu_error_wspace "4\~! \S\+"
|
||||||
syn region sisu_markpara contains=sisu_error,sisu_error_wspace start="^=begin" end="^=end.*$"
|
syn region sisu_markpara contains=sisu_error,sisu_error_wspace start="^=begin" end="^=end.*$"
|
||||||
"% 4 Errors?
|
"% 4 Errors?
|
||||||
@ -110,6 +101,7 @@ syn match sisu_error_wspace contains=sisu_error_wspace "^\s\+"
|
|||||||
syn match sisu_error_wspace contains=sisu_error_wspace "\s\s\+"
|
syn match sisu_error_wspace contains=sisu_error_wspace "\s\s\+"
|
||||||
syn match sisu_error_wspace contains=sisu_error_wspace " \s*$"
|
syn match sisu_error_wspace contains=sisu_error_wspace " \s*$"
|
||||||
syn match sisu_error contains=sisu_error,sisu_error_wspace "[^ (}]http:\S\+"
|
syn match sisu_error contains=sisu_error,sisu_error_wspace "[^ (}]http:\S\+"
|
||||||
|
syn match sisu_error contains=sisu_error_wspace "\t\+"
|
||||||
syn match sisu_error contains=sisu_error "http:\S\+[}><]"
|
syn match sisu_error contains=sisu_error "http:\S\+[}><]"
|
||||||
syn match sisu_error contains=sisu_error "\([!*/_\+,^]\){\([^(\}\1)]\)\{-}\n\n"
|
syn match sisu_error contains=sisu_error "\([!*/_\+,^]\){\([^(\}\1)]\)\{-}\n\n"
|
||||||
syn match sisu_error contains=sisu_error "^[\-\~]{[^{]\{-}\n\n"
|
syn match sisu_error contains=sisu_error "^[\-\~]{[^{]\{-}\n\n"
|
||||||
@ -139,8 +131,11 @@ if version >= 508 || !exists("did_sisu_syntax_inits")
|
|||||||
command -nargs=+ HiLink hi def link <args>
|
command -nargs=+ HiLink hi def link <args>
|
||||||
endif
|
endif
|
||||||
"% 1 Defined
|
"% 1 Defined
|
||||||
|
HiLink sisu_normal Normal
|
||||||
HiLink sisu_header PreProc
|
HiLink sisu_header PreProc
|
||||||
|
HiLink sisu_header_content Statement
|
||||||
HiLink sisu_heading Title
|
HiLink sisu_heading Title
|
||||||
|
HiLink sisu_structure Operator
|
||||||
HiLink sisu_contain Include
|
HiLink sisu_contain Include
|
||||||
HiLink sisu_mark_endnote Include
|
HiLink sisu_mark_endnote Include
|
||||||
HiLink sisu_link NonText
|
HiLink sisu_link NonText
|
||||||
@ -151,7 +146,6 @@ if version >= 508 || !exists("did_sisu_syntax_inits")
|
|||||||
HiLink sisu_content_endnote Special
|
HiLink sisu_content_endnote Special
|
||||||
HiLink sisu_control Define
|
HiLink sisu_control Define
|
||||||
HiLink sisu_ocn Include
|
HiLink sisu_ocn Include
|
||||||
HiLink sisu_digest Identifier
|
|
||||||
HiLink sisu_number Number
|
HiLink sisu_number Number
|
||||||
HiLink sisu_identifier Function
|
HiLink sisu_identifier Function
|
||||||
HiLink sisu_underline Underlined
|
HiLink sisu_underline Underlined
|
||||||
@ -165,8 +159,6 @@ if version >= 508 || !exists("did_sisu_syntax_inits")
|
|||||||
HiLink sisu_error_spell SpellErrors "line does nothing
|
HiLink sisu_error_spell SpellErrors "line does nothing
|
||||||
HiLink sisu_error_wspace Error
|
HiLink sisu_error_wspace Error
|
||||||
HiLink sisu_error Error
|
HiLink sisu_error Error
|
||||||
"HiLink sisu_ Statement
|
|
||||||
"HiLink sisu_ Operator
|
|
||||||
delcommand HiLink
|
delcommand HiLink
|
||||||
endif
|
endif
|
||||||
let b:current_syntax = "sisu"
|
let b:current_syntax = "sisu"
|
||||||
|
|||||||
21
src/gui.c
21
src/gui.c
@ -591,7 +591,7 @@ gui_init()
|
|||||||
/* When 'cmdheight' was set during startup it may not have taken
|
/* When 'cmdheight' was set during startup it may not have taken
|
||||||
* effect yet. */
|
* effect yet. */
|
||||||
if (p_ch != 1L)
|
if (p_ch != 1L)
|
||||||
command_height(-1L);
|
command_height();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -3497,6 +3497,25 @@ send_tabline_event(nr)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Send a tabline menu event
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
send_tabline_menu_event(tabidx, event)
|
||||||
|
int tabidx;
|
||||||
|
int event;
|
||||||
|
{
|
||||||
|
char_u string[3];
|
||||||
|
|
||||||
|
string[0] = CSI;
|
||||||
|
string[1] = KS_TABMENU;
|
||||||
|
string[2] = KE_FILLER;
|
||||||
|
add_to_input_buf(string, 3);
|
||||||
|
string[0] = tabidx;
|
||||||
|
string[1] = (char_u)(long)event;
|
||||||
|
add_to_input_buf_csi(string, 2);
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@ -3128,16 +3128,9 @@ static int clicked_page; /* page clicked in tab line */
|
|||||||
static void
|
static void
|
||||||
tabline_menu_handler(GtkMenuItem *item, gpointer user_data)
|
tabline_menu_handler(GtkMenuItem *item, gpointer user_data)
|
||||||
{
|
{
|
||||||
char_u string[3];
|
|
||||||
|
|
||||||
/* Add the string cmd into input buffer */
|
/* Add the string cmd into input buffer */
|
||||||
string[0] = CSI;
|
send_tabline_menu_event(clicked_page, (int)(long)user_data);
|
||||||
string[1] = KS_TABMENU;
|
|
||||||
string[2] = KE_FILLER;
|
|
||||||
add_to_input_buf(string, 3);
|
|
||||||
string[0] = clicked_page;
|
|
||||||
string[1] = (char_u)(long)user_data;
|
|
||||||
add_to_input_buf_csi(string, 2);
|
|
||||||
|
|
||||||
if (gtk_main_level() > 0)
|
if (gtk_main_level() > 0)
|
||||||
gtk_main_quit();
|
gtk_main_quit();
|
||||||
|
|||||||
109
src/gui_motif.c
109
src/gui_motif.c
@ -27,6 +27,7 @@
|
|||||||
#include <Xm/ToggleBG.h>
|
#include <Xm/ToggleBG.h>
|
||||||
#include <Xm/SeparatoG.h>
|
#include <Xm/SeparatoG.h>
|
||||||
#include <Xm/Notebook.h>
|
#include <Xm/Notebook.h>
|
||||||
|
#include <Xm/XmP.h>
|
||||||
|
|
||||||
#include <X11/keysym.h>
|
#include <X11/keysym.h>
|
||||||
#include <X11/Xatom.h>
|
#include <X11/Xatom.h>
|
||||||
@ -151,19 +152,52 @@ tabline_button_cb(w, client_data, call_data)
|
|||||||
Widget w;
|
Widget w;
|
||||||
XtPointer client_data, call_data;
|
XtPointer client_data, call_data;
|
||||||
{
|
{
|
||||||
char_u string[3];
|
|
||||||
int cmd, tab_idx;
|
int cmd, tab_idx;
|
||||||
|
|
||||||
XtVaGetValues(w, XmNuserData, &cmd, NULL);
|
XtVaGetValues(w, XmNuserData, &cmd, NULL);
|
||||||
XtVaGetValues(tabLine_menu, XmNuserData, &tab_idx, NULL);
|
XtVaGetValues(tabLine_menu, XmNuserData, &tab_idx, NULL);
|
||||||
|
|
||||||
string[0] = CSI;
|
send_tabline_menu_event(tab_idx, cmd);
|
||||||
string[1] = KS_TABMENU;
|
}
|
||||||
string[2] = KE_FILLER;
|
|
||||||
add_to_input_buf(string, 3);
|
/*
|
||||||
string[0] = tab_idx;
|
* Tabline single mouse click timeout handler
|
||||||
string[1] = (char_u)(long)cmd;
|
*/
|
||||||
add_to_input_buf_csi(string, 2);
|
/*ARGSUSED*/
|
||||||
|
static void
|
||||||
|
motif_tabline_timer_cb (timed_out, interval_id)
|
||||||
|
XtPointer timed_out;
|
||||||
|
XtIntervalId *interval_id;
|
||||||
|
{
|
||||||
|
*((int *)timed_out) = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* check if the tabline tab scroller is clicked
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
tabline_scroller_clicked(scroller_name, event)
|
||||||
|
char *scroller_name;
|
||||||
|
XButtonPressedEvent *event;
|
||||||
|
{
|
||||||
|
Widget tab_scroll_w;
|
||||||
|
Position pos_x, pos_y;
|
||||||
|
Dimension width, height;
|
||||||
|
|
||||||
|
tab_scroll_w = XtNameToWidget(tabLine, scroller_name);
|
||||||
|
if (tab_scroll_w != (Widget)0) {
|
||||||
|
XtVaGetValues(tab_scroll_w, XmNx, &pos_x, XmNy, &pos_y, XmNwidth,
|
||||||
|
&width, XmNheight, &height, NULL);
|
||||||
|
if (pos_x >= 0) {
|
||||||
|
/* Tab scroller (next) is visible */
|
||||||
|
if ((event->x >= pos_x) && (event->x <= pos_x + width) &&
|
||||||
|
(event->y >= pos_y) && (event->y <= pos_y + height)) {
|
||||||
|
/* Clicked on the scroller */
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*ARGSUSED*/
|
/*ARGSUSED*/
|
||||||
@ -179,15 +213,47 @@ tabline_menu_cb(w, closure, e, continue_dispatch)
|
|||||||
int tab_idx = 0;
|
int tab_idx = 0;
|
||||||
WidgetList children;
|
WidgetList children;
|
||||||
Cardinal numChildren;
|
Cardinal numChildren;
|
||||||
|
static XtIntervalId timer = (XtIntervalId)0;
|
||||||
|
static int timed_out = TRUE;
|
||||||
|
|
||||||
event = (XButtonPressedEvent *)e;
|
event = (XButtonPressedEvent *)e;
|
||||||
|
|
||||||
|
if (event->button == Button1)
|
||||||
|
{
|
||||||
|
if (tabline_scroller_clicked("MajorTabScrollerNext", event)
|
||||||
|
|| tabline_scroller_clicked("MajorTabScrollerPrevious", event))
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!timed_out)
|
||||||
|
{
|
||||||
|
XtRemoveTimeOut(timer);
|
||||||
|
timed_out = TRUE;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Double click on the tabline gutter, add a new tab
|
||||||
|
*/
|
||||||
|
send_tabline_menu_event(0, TABLINE_MENU_NEW);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Single click on the tabline gutter, start a timer to check
|
||||||
|
* for double clicks
|
||||||
|
*/
|
||||||
|
timer = XtAppAddTimeOut(app_context, (long_u)p_mouset,
|
||||||
|
motif_tabline_timer_cb, &timed_out);
|
||||||
|
timed_out = FALSE;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (event->button != Button3)
|
if (event->button != Button3)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (event->subwindow != None)
|
if (event->subwindow != None)
|
||||||
{
|
{
|
||||||
tab_w = XtWindowToWidget(XtDisplay(w), event->subwindow);
|
tab_w = XtWindowToWidget(XtDisplay(w), event->subwindow);
|
||||||
|
/* LINTED: avoid warning: dubious operation on enum */
|
||||||
if (tab_w != (Widget)0 && XmIsPushButton(tab_w))
|
if (tab_w != (Widget)0 && XmIsPushButton(tab_w))
|
||||||
XtVaGetValues(tab_w, XmNpageNumber, &tab_idx, NULL);
|
XtVaGetValues(tab_w, XmNpageNumber, &tab_idx, NULL);
|
||||||
}
|
}
|
||||||
@ -3169,6 +3235,9 @@ gui_mch_show_tabline(int showit)
|
|||||||
{
|
{
|
||||||
XtManageChild(tabLine);
|
XtManageChild(tabLine);
|
||||||
XtUnmanageChild(XtNameToWidget(tabLine, "PageScroller"));
|
XtUnmanageChild(XtNameToWidget(tabLine, "PageScroller"));
|
||||||
|
XtUnmanageChild(XtNameToWidget(tabLine, "MinorTabScrollerNext"));
|
||||||
|
XtUnmanageChild(XtNameToWidget(tabLine,
|
||||||
|
"MinorTabScrollerPrevious"));
|
||||||
#ifdef FEAT_MENU
|
#ifdef FEAT_MENU
|
||||||
# ifdef FEAT_TOOLBAR
|
# ifdef FEAT_TOOLBAR
|
||||||
if (XtIsManaged(XtParent(toolBar)))
|
if (XtIsManaged(XtParent(toolBar)))
|
||||||
@ -3237,6 +3306,8 @@ gui_mch_update_tabline(void)
|
|||||||
XmNotebookPageInfo page_info;
|
XmNotebookPageInfo page_info;
|
||||||
XmNotebookPageStatus page_status;
|
XmNotebookPageStatus page_status;
|
||||||
int last_page, tab_count;
|
int last_page, tab_count;
|
||||||
|
XmString label_str;
|
||||||
|
char *label_cstr;
|
||||||
|
|
||||||
if (tabLine == (Widget)0)
|
if (tabLine == (Widget)0)
|
||||||
return;
|
return;
|
||||||
@ -3265,9 +3336,25 @@ gui_mch_update_tabline(void)
|
|||||||
tab = page_info.major_tab_widget;
|
tab = page_info.major_tab_widget;
|
||||||
|
|
||||||
XtVaSetValues(tab, XmNpageNumber, nr, NULL);
|
XtVaSetValues(tab, XmNpageNumber, nr, NULL);
|
||||||
get_tabline_label(tp);
|
|
||||||
XtVaSetValues(tab, XtVaTypedArg, XmNlabelString, XmRString,
|
/*
|
||||||
NameBuff, STRLEN(NameBuff) + 1, NULL);
|
* Change the label text only if it is different
|
||||||
|
*/
|
||||||
|
XtVaGetValues(tab, XmNlabelString, &label_str, NULL);
|
||||||
|
if (XmStringGetLtoR(label_str, XmSTRING_DEFAULT_CHARSET, &label_cstr))
|
||||||
|
{
|
||||||
|
get_tabline_label(tp);
|
||||||
|
if (STRCMP(label_cstr, NameBuff) != 0) {
|
||||||
|
XtVaSetValues(tab, XtVaTypedArg, XmNlabelString, XmRString,
|
||||||
|
NameBuff, STRLEN(NameBuff) + 1, NULL);
|
||||||
|
/*
|
||||||
|
* Force a resize of the tab label button
|
||||||
|
*/
|
||||||
|
XtUnmanageChild(tab);
|
||||||
|
XtManageChild(tab);
|
||||||
|
}
|
||||||
|
XtFree(label_cstr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tab_count = nr - 1;
|
tab_count = nr - 1;
|
||||||
|
|||||||
@ -740,17 +740,7 @@ _WndProc(
|
|||||||
GetCursorPos((LPPOINT)&pt);
|
GetCursorPos((LPPOINT)&pt);
|
||||||
GetWindowRect(s_textArea, &rect);
|
GetWindowRect(s_textArea, &rect);
|
||||||
if (pt.y < rect.top)
|
if (pt.y < rect.top)
|
||||||
{
|
send_tabline_menu_event(0, TABLINE_MENU_NEW);
|
||||||
char_u string[3];
|
|
||||||
|
|
||||||
string[0] = CSI;
|
|
||||||
string[1] = KS_TABMENU;
|
|
||||||
string[2] = KE_FILLER;
|
|
||||||
add_to_input_buf(string, 3);
|
|
||||||
string[0] = 0;
|
|
||||||
string[1] = (char_u)(long)TABLINE_MENU_NEW;
|
|
||||||
add_to_input_buf_csi(string, 2);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return MyWindowProc(hwnd, uMsg, wParam, lParam);
|
return MyWindowProc(hwnd, uMsg, wParam, lParam);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1120,6 +1120,7 @@ gui_mch_set_text_area_pos(int x, int y, int w, int h)
|
|||||||
if (showing_tabline)
|
if (showing_tabline)
|
||||||
{
|
{
|
||||||
int top = 0;
|
int top = 0;
|
||||||
|
RECT rect;
|
||||||
|
|
||||||
#ifdef FEAT_TOOLBAR
|
#ifdef FEAT_TOOLBAR
|
||||||
if (vim_strchr(p_go, GO_TOOLBAR) != NULL)
|
if (vim_strchr(p_go, GO_TOOLBAR) != NULL)
|
||||||
@ -2191,7 +2192,6 @@ show_tabline_popup_menu(void)
|
|||||||
MENUITEMINFO minfo;
|
MENUITEMINFO minfo;
|
||||||
long rval;
|
long rval;
|
||||||
POINT pt;
|
POINT pt;
|
||||||
char_u string[3];
|
|
||||||
|
|
||||||
tab_pmenu = CreatePopupMenu();
|
tab_pmenu = CreatePopupMenu();
|
||||||
if (tab_pmenu == NULL)
|
if (tab_pmenu == NULL)
|
||||||
@ -2236,13 +2236,7 @@ show_tabline_popup_menu(void)
|
|||||||
else
|
else
|
||||||
idx += 1;
|
idx += 1;
|
||||||
|
|
||||||
string[0] = CSI;
|
send_tabline_menu_event(idx, (int)rval);
|
||||||
string[1] = KS_TABMENU;
|
|
||||||
string[2] = KE_FILLER;
|
|
||||||
add_to_input_buf(string, 3);
|
|
||||||
string[0] = idx;
|
|
||||||
string[1] = (char_u)(long)rval;
|
|
||||||
add_to_input_buf_csi(string, 2);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -7743,7 +7743,7 @@ set_num_option(opt_idx, varp, value, errbuf, errbuflen, opt_flags)
|
|||||||
&& !gui.starting
|
&& !gui.starting
|
||||||
#endif
|
#endif
|
||||||
)
|
)
|
||||||
command_height(old_value);
|
command_height();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* when 'updatecount' changes from zero to non-zero, open swap files */
|
/* when 'updatecount' changes from zero to non-zero, open swap files */
|
||||||
|
|||||||
@ -38,6 +38,7 @@ extern int gui_use_tabline __ARGS((void));
|
|||||||
extern void gui_update_tabline __ARGS((void));
|
extern void gui_update_tabline __ARGS((void));
|
||||||
extern void get_tabline_label __ARGS((tabpage_T *tp));
|
extern void get_tabline_label __ARGS((tabpage_T *tp));
|
||||||
extern int send_tabline_event __ARGS((int nr));
|
extern int send_tabline_event __ARGS((int nr));
|
||||||
|
extern void send_tabline_menu_event __ARGS((int tabidx, int event));
|
||||||
extern void gui_remove_scrollbars __ARGS((void));
|
extern void gui_remove_scrollbars __ARGS((void));
|
||||||
extern void gui_create_scrollbar __ARGS((scrollbar_T *sb, int type, win_T *wp));
|
extern void gui_create_scrollbar __ARGS((scrollbar_T *sb, int type, win_T *wp));
|
||||||
extern scrollbar_T *gui_find_scrollbar __ARGS((long ident));
|
extern scrollbar_T *gui_find_scrollbar __ARGS((long ident));
|
||||||
|
|||||||
@ -1,59 +1,59 @@
|
|||||||
/* window.c */
|
/* window.c */
|
||||||
extern void do_window __ARGS((int nchar, long Prenum, int xchar));
|
void do_window __ARGS((int nchar, long Prenum, int xchar));
|
||||||
extern int win_split __ARGS((int size, int flags));
|
int win_split __ARGS((int size, int flags));
|
||||||
extern int win_valid __ARGS((win_T *win));
|
int win_valid __ARGS((win_T *win));
|
||||||
extern int win_count __ARGS((void));
|
int win_count __ARGS((void));
|
||||||
extern int make_windows __ARGS((int count, int vertical));
|
int make_windows __ARGS((int count, int vertical));
|
||||||
extern void win_move_after __ARGS((win_T *win1, win_T *win2));
|
void win_move_after __ARGS((win_T *win1, win_T *win2));
|
||||||
extern void win_equal __ARGS((win_T *next_curwin, int current, int dir));
|
void win_equal __ARGS((win_T *next_curwin, int current, int dir));
|
||||||
extern void close_windows __ARGS((buf_T *buf, int keep_curwin));
|
void close_windows __ARGS((buf_T *buf, int keep_curwin));
|
||||||
extern void win_close __ARGS((win_T *win, int free_buf));
|
void win_close __ARGS((win_T *win, int free_buf));
|
||||||
extern void win_close_othertab __ARGS((win_T *win, int free_buf, tabpage_T *tp));
|
void win_close_othertab __ARGS((win_T *win, int free_buf, tabpage_T *tp));
|
||||||
extern void win_free_all __ARGS((void));
|
void win_free_all __ARGS((void));
|
||||||
extern void close_others __ARGS((int message, int forceit));
|
void close_others __ARGS((int message, int forceit));
|
||||||
extern void curwin_init __ARGS((void));
|
void curwin_init __ARGS((void));
|
||||||
extern int win_alloc_first __ARGS((void));
|
int win_alloc_first __ARGS((void));
|
||||||
extern void win_init_size __ARGS((void));
|
void win_init_size __ARGS((void));
|
||||||
extern int win_new_tabpage __ARGS((int after));
|
int win_new_tabpage __ARGS((int after));
|
||||||
extern int may_open_tabpage __ARGS((void));
|
int may_open_tabpage __ARGS((void));
|
||||||
extern int make_tabpages __ARGS((int maxcount));
|
int make_tabpages __ARGS((int maxcount));
|
||||||
extern int valid_tabpage __ARGS((tabpage_T *tpc));
|
int valid_tabpage __ARGS((tabpage_T *tpc));
|
||||||
extern tabpage_T *find_tabpage __ARGS((int n));
|
tabpage_T *find_tabpage __ARGS((int n));
|
||||||
extern int tabpage_index __ARGS((tabpage_T *ftp));
|
int tabpage_index __ARGS((tabpage_T *ftp));
|
||||||
extern void goto_tabpage __ARGS((int n));
|
void goto_tabpage __ARGS((int n));
|
||||||
extern void goto_tabpage_tp __ARGS((tabpage_T *tp));
|
void goto_tabpage_tp __ARGS((tabpage_T *tp));
|
||||||
extern void tabpage_move __ARGS((int nr));
|
void tabpage_move __ARGS((int nr));
|
||||||
extern void win_goto __ARGS((win_T *wp));
|
void win_goto __ARGS((win_T *wp));
|
||||||
extern win_T *win_find_nr __ARGS((int winnr));
|
win_T *win_find_nr __ARGS((int winnr));
|
||||||
extern void win_enter __ARGS((win_T *wp, int undo_sync));
|
void win_enter __ARGS((win_T *wp, int undo_sync));
|
||||||
extern win_T *buf_jump_open_win __ARGS((buf_T *buf));
|
win_T *buf_jump_open_win __ARGS((buf_T *buf));
|
||||||
extern int win_alloc_lines __ARGS((win_T *wp));
|
int win_alloc_lines __ARGS((win_T *wp));
|
||||||
extern void win_free_lsize __ARGS((win_T *wp));
|
void win_free_lsize __ARGS((win_T *wp));
|
||||||
extern void shell_new_rows __ARGS((void));
|
void shell_new_rows __ARGS((void));
|
||||||
extern void shell_new_columns __ARGS((void));
|
void shell_new_columns __ARGS((void));
|
||||||
extern void win_size_save __ARGS((garray_T *gap));
|
void win_size_save __ARGS((garray_T *gap));
|
||||||
extern void win_size_restore __ARGS((garray_T *gap));
|
void win_size_restore __ARGS((garray_T *gap));
|
||||||
extern int win_comp_pos __ARGS((void));
|
int win_comp_pos __ARGS((void));
|
||||||
extern void win_setheight __ARGS((int height));
|
void win_setheight __ARGS((int height));
|
||||||
extern void win_setheight_win __ARGS((int height, win_T *win));
|
void win_setheight_win __ARGS((int height, win_T *win));
|
||||||
extern void win_setwidth __ARGS((int width));
|
void win_setwidth __ARGS((int width));
|
||||||
extern void win_setwidth_win __ARGS((int width, win_T *wp));
|
void win_setwidth_win __ARGS((int width, win_T *wp));
|
||||||
extern void win_setminheight __ARGS((void));
|
void win_setminheight __ARGS((void));
|
||||||
extern void win_drag_status_line __ARGS((win_T *dragwin, int offset));
|
void win_drag_status_line __ARGS((win_T *dragwin, int offset));
|
||||||
extern void win_drag_vsep_line __ARGS((win_T *dragwin, int offset));
|
void win_drag_vsep_line __ARGS((win_T *dragwin, int offset));
|
||||||
extern void win_comp_scroll __ARGS((win_T *wp));
|
void win_comp_scroll __ARGS((win_T *wp));
|
||||||
extern void command_height __ARGS((long old_p_ch));
|
void command_height __ARGS((void));
|
||||||
extern void last_status __ARGS((int morewin));
|
void last_status __ARGS((int morewin));
|
||||||
extern int tabline_height __ARGS((void));
|
int tabline_height __ARGS((void));
|
||||||
extern char_u *grab_file_name __ARGS((long count, linenr_T *file_lnum));
|
char_u *grab_file_name __ARGS((long count, linenr_T *file_lnum));
|
||||||
extern char_u *file_name_at_cursor __ARGS((int options, long count, linenr_T *file_lnum));
|
char_u *file_name_at_cursor __ARGS((int options, long count, linenr_T *file_lnum));
|
||||||
extern char_u *file_name_in_line __ARGS((char_u *line, int col, int options, long count, char_u *rel_fname, linenr_T *file_lnum));
|
char_u *file_name_in_line __ARGS((char_u *line, int col, int options, long count, char_u *rel_fname, linenr_T *file_lnum));
|
||||||
extern char_u *find_file_name_in_path __ARGS((char_u *ptr, int len, int options, long count, char_u *rel_fname));
|
char_u *find_file_name_in_path __ARGS((char_u *ptr, int len, int options, long count, char_u *rel_fname));
|
||||||
extern int path_with_url __ARGS((char_u *fname));
|
int path_with_url __ARGS((char_u *fname));
|
||||||
extern int vim_isAbsName __ARGS((char_u *name));
|
int vim_isAbsName __ARGS((char_u *name));
|
||||||
extern int vim_FullName __ARGS((char_u *fname, char_u *buf, int len, int force));
|
int vim_FullName __ARGS((char_u *fname, char_u *buf, int len, int force));
|
||||||
extern int min_rows __ARGS((void));
|
int min_rows __ARGS((void));
|
||||||
extern int only_one_window __ARGS((void));
|
int only_one_window __ARGS((void));
|
||||||
extern void check_lnums __ARGS((int do_curwin));
|
void check_lnums __ARGS((int do_curwin));
|
||||||
extern int win_hasvertsplit __ARGS((void));
|
int win_hasvertsplit __ARGS((void));
|
||||||
/* vim: set ft=c : */
|
/* vim: set ft=c : */
|
||||||
|
|||||||
@ -1625,6 +1625,8 @@ struct tabpage_S
|
|||||||
win_T *tp_lastwin; /* last window in this Tab page */
|
win_T *tp_lastwin; /* last window in this Tab page */
|
||||||
long tp_old_Rows; /* Rows when Tab page was left */
|
long tp_old_Rows; /* Rows when Tab page was left */
|
||||||
long tp_old_Columns; /* Columns when Tab page was left */
|
long tp_old_Columns; /* Columns when Tab page was left */
|
||||||
|
long tp_ch_used; /* value of 'cmdheight' when frame size
|
||||||
|
was set */
|
||||||
#ifdef FEAT_GUI
|
#ifdef FEAT_GUI
|
||||||
int tp_prev_which_scrollbars[3];
|
int tp_prev_which_scrollbars[3];
|
||||||
/* previous value of which_scrollbars */
|
/* previous value of which_scrollbars */
|
||||||
|
|||||||
@ -35,6 +35,6 @@
|
|||||||
*/
|
*/
|
||||||
#define VIM_VERSION_NODOT "vim70c"
|
#define VIM_VERSION_NODOT "vim70c"
|
||||||
#define VIM_VERSION_SHORT "7.0c"
|
#define VIM_VERSION_SHORT "7.0c"
|
||||||
#define VIM_VERSION_MEDIUM "7.0c12 BETA"
|
#define VIM_VERSION_MEDIUM "7.0c13 BETA"
|
||||||
#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0c12 BETA (2006 Apr 7)"
|
#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0c13 BETA (2006 Apr 8)"
|
||||||
#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0c12 BETA (2006 Apr 7, compiled "
|
#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0c13 BETA (2006 Apr 8, compiled "
|
||||||
|
|||||||
29
src/window.c
29
src/window.c
@ -85,8 +85,6 @@ static void win_new_height __ARGS((win_T *, int));
|
|||||||
#define NOWIN (win_T *)-1 /* non-exisiting window */
|
#define NOWIN (win_T *)-1 /* non-exisiting window */
|
||||||
|
|
||||||
#ifdef FEAT_WINDOWS
|
#ifdef FEAT_WINDOWS
|
||||||
static long p_ch_used = 1L; /* value of 'cmdheight' when frame
|
|
||||||
size was set */
|
|
||||||
# define ROWS_AVAIL (Rows - p_ch - tabline_height())
|
# define ROWS_AVAIL (Rows - p_ch - tabline_height())
|
||||||
#else
|
#else
|
||||||
# define ROWS_AVAIL (Rows - p_ch)
|
# define ROWS_AVAIL (Rows - p_ch)
|
||||||
@ -3087,9 +3085,6 @@ win_alloc_firstwin(oldwin)
|
|||||||
topframe->fr_width = Columns;
|
topframe->fr_width = Columns;
|
||||||
#endif
|
#endif
|
||||||
topframe->fr_height = Rows - p_ch;
|
topframe->fr_height = Rows - p_ch;
|
||||||
#ifdef FEAT_WINDOWS
|
|
||||||
p_ch_used = p_ch;
|
|
||||||
#endif
|
|
||||||
topframe->fr_win = curwin;
|
topframe->fr_win = curwin;
|
||||||
curwin->w_frame = topframe;
|
curwin->w_frame = topframe;
|
||||||
|
|
||||||
@ -3137,6 +3132,7 @@ alloc_tabpage()
|
|||||||
/* init t: variables */
|
/* init t: variables */
|
||||||
init_var_dict(&tp->tp_vars, &tp->tp_winvar);
|
init_var_dict(&tp->tp_vars, &tp->tp_winvar);
|
||||||
#endif
|
#endif
|
||||||
|
tp->tp_ch_used = p_ch;
|
||||||
}
|
}
|
||||||
return tp;
|
return tp;
|
||||||
}
|
}
|
||||||
@ -3419,7 +3415,9 @@ enter_tabpage(tp, old_curbuf)
|
|||||||
|
|
||||||
/* The tabpage line may have appeared or disappeared, may need to resize
|
/* The tabpage line may have appeared or disappeared, may need to resize
|
||||||
* the frames for that. When the Vim window was resized need to update
|
* the frames for that. When the Vim window was resized need to update
|
||||||
* frame sizes too. */
|
* frame sizes too. Use the stored value of p_ch, so that it can be
|
||||||
|
* different for each tab page. */
|
||||||
|
p_ch = curtab->tp_ch_used;
|
||||||
if (curtab->tp_old_Rows != Rows || (old_off != firstwin->w_winrow
|
if (curtab->tp_old_Rows != Rows || (old_off != firstwin->w_winrow
|
||||||
#ifdef FEAT_GUI_TABLINE
|
#ifdef FEAT_GUI_TABLINE
|
||||||
&& !gui_use_tabline()
|
&& !gui_use_tabline()
|
||||||
@ -4215,7 +4213,7 @@ shell_new_rows()
|
|||||||
#endif
|
#endif
|
||||||
compute_cmdrow();
|
compute_cmdrow();
|
||||||
#ifdef FEAT_WINDOWS
|
#ifdef FEAT_WINDOWS
|
||||||
p_ch_used = p_ch;
|
curtab->tp_ch_used = p_ch;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
@ -4961,6 +4959,7 @@ win_drag_status_line(dragwin, offset)
|
|||||||
p_ch = Rows - cmdline_row;
|
p_ch = Rows - cmdline_row;
|
||||||
if (p_ch < 1)
|
if (p_ch < 1)
|
||||||
p_ch = 1;
|
p_ch = 1;
|
||||||
|
curtab->tp_ch_used = p_ch;
|
||||||
redraw_all_later(SOME_VALID);
|
redraw_all_later(SOME_VALID);
|
||||||
showmode();
|
showmode();
|
||||||
}
|
}
|
||||||
@ -5257,19 +5256,17 @@ win_comp_scroll(wp)
|
|||||||
* command_height: called whenever p_ch has been changed
|
* command_height: called whenever p_ch has been changed
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
command_height(old_p_ch)
|
command_height()
|
||||||
long old_p_ch;
|
|
||||||
{
|
{
|
||||||
#ifdef FEAT_WINDOWS
|
#ifdef FEAT_WINDOWS
|
||||||
int h;
|
int h;
|
||||||
frame_T *frp;
|
frame_T *frp;
|
||||||
|
int old_p_ch = curtab->tp_ch_used;
|
||||||
|
|
||||||
/* When passed a negative value use the value of p_ch that we remembered.
|
/* Use the value of p_ch that we remembered. This is needed for when the
|
||||||
* This is needed for when the GUI starts up, we can't be sure in what
|
* GUI starts up, we can't be sure in what order things happen. And when
|
||||||
* order things happen. */
|
* p_ch was changed in another tab page. */
|
||||||
if (old_p_ch < 0)
|
curtab->tp_ch_used = p_ch;
|
||||||
old_p_ch = p_ch_used;
|
|
||||||
p_ch_used = p_ch;
|
|
||||||
|
|
||||||
/* Find bottom frame with width of screen. */
|
/* Find bottom frame with width of screen. */
|
||||||
frp = lastwin->w_frame;
|
frp = lastwin->w_frame;
|
||||||
@ -5328,8 +5325,8 @@ command_height(old_p_ch)
|
|||||||
if (frp != lastwin->w_frame)
|
if (frp != lastwin->w_frame)
|
||||||
(void)win_comp_pos();
|
(void)win_comp_pos();
|
||||||
#else
|
#else
|
||||||
win_setheight((int)(firstwin->w_height + old_p_ch - p_ch));
|
|
||||||
cmdline_row = Rows - p_ch;
|
cmdline_row = Rows - p_ch;
|
||||||
|
win_setheight(cmdline_row);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user