mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
updated for version 7.0f05
This commit is contained in:
@@ -96,9 +96,9 @@ function! GetRubyVarType(v)
|
|||||||
let ctors = '\(now\|new\|open\|get_instance\)'
|
let ctors = '\(now\|new\|open\|get_instance\)'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let [lnum,lcol] = searchpos(''.a:v.'\>\s*[+\-*/]*=\s*\([^ \t]\+.' . ctors .'\>\|[\[{"''/]\|%r{\)','nb',stopline)
|
let [lnum,lcol] = searchpos(''.a:v.'\>\s*[+\-*/]*=\s*\([^ \t]\+.' . ctors .'\>\|[\[{"''/]\|%r{\|[A-Za-z0-9@:\-()]\+...\?\)','nb',stopline)
|
||||||
if lnum != 0 && lcol != 0
|
if lnum != 0 && lcol != 0
|
||||||
let str = matchstr(getline(lnum),'=\s*\([^ \t]\+.' . ctors . '\>\|[\[{"''/]\|%r{\)',lcol)
|
let str = matchstr(getline(lnum),'=\s*\([^ \t]\+.' . ctors . '\>\|[\[{"''/]\|%r{\|[A-Za-z0-9@:\-()]\+...\?\)',lcol)
|
||||||
let str = substitute(str,'^=\s*','','')
|
let str = substitute(str,'^=\s*','','')
|
||||||
call setpos('.',pos)
|
call setpos('.',pos)
|
||||||
if str == '"' || str == ''''
|
if str == '"' || str == ''''
|
||||||
@@ -109,6 +109,8 @@ function! GetRubyVarType(v)
|
|||||||
return 'Hash'
|
return 'Hash'
|
||||||
elseif str == '/' || str == '%r{'
|
elseif str == '/' || str == '%r{'
|
||||||
return 'Regexp'
|
return 'Regexp'
|
||||||
|
elseif strlen(str) >= 4 && stridx(str,'..') != -1
|
||||||
|
return 'Range'
|
||||||
elseif strlen(str) > 4
|
elseif strlen(str) > 4
|
||||||
let l = stridx(str,'.')
|
let l = stridx(str,'.')
|
||||||
return str[0:l-1]
|
return str[0:l-1]
|
||||||
@@ -217,6 +219,7 @@ def load_buffer_module(name)
|
|||||||
end
|
end
|
||||||
|
|
||||||
def get_buffer_entity(name, vimfun)
|
def get_buffer_entity(name, vimfun)
|
||||||
|
return nil if /(\"|\')+/.match( name )
|
||||||
buf = VIM::Buffer.current
|
buf = VIM::Buffer.current
|
||||||
nums = eval( VIM::evaluate( vimfun % name ) )
|
nums = eval( VIM::evaluate( vimfun % name ) )
|
||||||
return nil if nums == nil
|
return nil if nums == nil
|
||||||
@@ -234,6 +237,14 @@ def get_buffer_entity(name, vimfun)
|
|||||||
return classdef
|
return classdef
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def get_var_type( receiver )
|
||||||
|
if /(\"|\')+/.match( receiver )
|
||||||
|
"String"
|
||||||
|
else
|
||||||
|
VIM::evaluate("GetRubyVarType('%s')" % receiver)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def get_buffer_classes()
|
def get_buffer_classes()
|
||||||
# this will be a little expensive.
|
# this will be a little expensive.
|
||||||
allow_aggressive_load = VIM::evaluate('g:rubycomplete_classes_in_global')
|
allow_aggressive_load = VIM::evaluate('g:rubycomplete_classes_in_global')
|
||||||
@@ -300,64 +311,55 @@ def get_completions(base)
|
|||||||
load_requires
|
load_requires
|
||||||
load_rails
|
load_rails
|
||||||
|
|
||||||
input = VIM::evaluate('expand("<cWORD>")')
|
|
||||||
input += base
|
|
||||||
input.lstrip!
|
|
||||||
if input.length == 0
|
|
||||||
input = VIM::Buffer.current.line
|
input = VIM::Buffer.current.line
|
||||||
input.strip!
|
cpos = VIM::Window.current.cursor[1] - 1
|
||||||
end
|
input = input[0..cpos] if cpos != 0
|
||||||
message = nil
|
input += base
|
||||||
|
|
||||||
|
rip = input.rindex(/\s/,cpos)
|
||||||
|
if rip
|
||||||
|
input = input[rip..input.length]
|
||||||
|
end
|
||||||
|
|
||||||
|
asn = /^.*(\+|\-|\*|=|\(|\[)=?(\s*[A-Za-z0-9_:@.-]*)(\s*(\{|\+|\-|\*|\%|\/)?\s*).*/
|
||||||
|
if asn.match(input)
|
||||||
|
input = $2
|
||||||
|
end
|
||||||
|
|
||||||
|
input.strip!
|
||||||
|
message = nil
|
||||||
|
receiver = nil
|
||||||
|
candidates = []
|
||||||
|
|
||||||
case input
|
case input
|
||||||
when /^(\/[^\/]*\/)\.([^.]*)$/
|
when /^(\/[^\/]*\/)\.([^.]*)$/ # Regexp
|
||||||
# Regexp
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($2)
|
message = Regexp.quote($2)
|
||||||
|
|
||||||
candidates = Regexp.instance_methods(true)
|
candidates = Regexp.instance_methods(true)
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
when /^([^\]]*\])\.([^.]*)$/
|
when /^([^\]]*\])\.([^.]*)$/ # Array
|
||||||
# Array
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($2)
|
message = Regexp.quote($2)
|
||||||
|
|
||||||
candidates = Array.instance_methods(true)
|
candidates = Array.instance_methods(true)
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
when /^([^\}]*\})\.([^.]*)$/
|
when /^([^\}]*\})\.([^.]*)$/ # Proc or Hash
|
||||||
# Proc or Hash
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($2)
|
message = Regexp.quote($2)
|
||||||
|
|
||||||
candidates = Proc.instance_methods(true) | Hash.instance_methods(true)
|
candidates = Proc.instance_methods(true) | Hash.instance_methods(true)
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
when /^(:[^:.]*)$/
|
when /^(:[^:.]*)$/ # Symbol
|
||||||
# Symbol
|
|
||||||
if Symbol.respond_to?(:all_symbols)
|
if Symbol.respond_to?(:all_symbols)
|
||||||
sym = $1
|
receiver = $1
|
||||||
candidates = Symbol.all_symbols.collect{|s| ":" + s.id2name}
|
candidates = Symbol.all_symbols.collect{|s| s.id2name}
|
||||||
candidates.grep(/^#{sym}/)
|
candidates.delete_if { |c| c.match( /'/ ) }
|
||||||
candidates.delete_if do |c|
|
|
||||||
c.match( /'/ )
|
|
||||||
end
|
|
||||||
candidates.uniq!
|
|
||||||
candidates.sort!
|
|
||||||
else
|
|
||||||
[]
|
|
||||||
end
|
end
|
||||||
|
|
||||||
when /^::([A-Z][^:\.\(]*)$/
|
when /^::([A-Z][^:\.\(]*)$/ # Absolute Constant or class methods
|
||||||
# Absolute Constant or class methods
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
candidates = Object.constants
|
candidates = Object.constants
|
||||||
candidates.grep(/^#{receiver}/).collect{|e| "::" + e}
|
candidates.grep(/^#{receiver}/).collect{|e| "::" + e}
|
||||||
|
|
||||||
when /^(((::)?[A-Z][^:.\(]*)+)::?([^:.]*)$/
|
when /^(((::)?[A-Z][^:.\(]*)+)::?([^:.]*)$/ # Constant or class methods
|
||||||
# Constant or class methods
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($4)
|
message = Regexp.quote($4)
|
||||||
begin
|
begin
|
||||||
@@ -367,39 +369,30 @@ def get_completions(base)
|
|||||||
end
|
end
|
||||||
candidates.grep(/^#{message}/).collect{|e| receiver + "::" + e}
|
candidates.grep(/^#{message}/).collect{|e| receiver + "::" + e}
|
||||||
|
|
||||||
when /^(:[^:.]+)\.([^.]*)$/
|
when /^(:[^:.]+)\.([^.]*)$/ # Symbol
|
||||||
# Symbol
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($2)
|
message = Regexp.quote($2)
|
||||||
|
|
||||||
candidates = Symbol.instance_methods(true)
|
candidates = Symbol.instance_methods(true)
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
when /^([0-9_]+(\.[0-9_]+)?(e[0-9]+)?)\.([^.]*)$/
|
when /^([0-9_]+(\.[0-9_]+)?(e[0-9]+)?)\.([^.]*)$/ # Numeric
|
||||||
# Numeric
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($4)
|
message = Regexp.quote($4)
|
||||||
|
|
||||||
begin
|
begin
|
||||||
candidates = eval(receiver).methods
|
candidates = eval(receiver).methods
|
||||||
rescue Exception
|
rescue Exception
|
||||||
candidates
|
candidates
|
||||||
end
|
end
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
when /^(\$[^.]*)$/
|
when /^(\$[^.]*)$/ #global
|
||||||
candidates = global_variables.grep(Regexp.new(Regexp.quote($1)))
|
candidates = global_variables.grep(Regexp.new(Regexp.quote($1)))
|
||||||
|
|
||||||
# when /^(\$?(\.?[^.]+)+)\.([^.]*)$/
|
when /^((\.?[^.]+)+)\.([^.]*)$/ # variable
|
||||||
when /^((\.?[^.]+)+)\.([^.]*)$/
|
|
||||||
# variable
|
|
||||||
receiver = $1
|
receiver = $1
|
||||||
message = Regexp.quote($3)
|
message = Regexp.quote($3)
|
||||||
load_buffer_class( receiver )
|
load_buffer_class( receiver )
|
||||||
|
|
||||||
cv = eval("self.class.constants")
|
cv = eval("self.class.constants")
|
||||||
|
vartype = get_var_type( receiver )
|
||||||
vartype = VIM::evaluate("GetRubyVarType('%s')" % receiver)
|
|
||||||
if vartype != ''
|
if vartype != ''
|
||||||
load_buffer_class( vartype )
|
load_buffer_class( vartype )
|
||||||
|
|
||||||
@@ -426,25 +419,19 @@ def get_completions(base)
|
|||||||
/^(IRB|SLex|RubyLex|RubyToken)/ =~ m.name
|
/^(IRB|SLex|RubyLex|RubyToken)/ =~ m.name
|
||||||
candidates.concat m.instance_methods(false)
|
candidates.concat m.instance_methods(false)
|
||||||
}
|
}
|
||||||
candidates.sort!
|
|
||||||
candidates.uniq!
|
|
||||||
end
|
end
|
||||||
#identify_type( receiver )
|
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
#when /^((\.?[^.]+)+)\.([^.]*)\(\s*\)*$/
|
when /^\(?\s*[A-Za-z0-9:^@.%\/+*\(\)]+\.\.\.?[A-Za-z0-9:^@.%\/+*\(\)]+\s*\)?\.([^.]*)/
|
||||||
#function call
|
message = $1
|
||||||
#obj = $1
|
candidates = Range.instance_methods(true)
|
||||||
#func = $3
|
|
||||||
|
|
||||||
when /^\.([^.]*)$/
|
when /^\[(\s*[A-Za-z0-9:^@.%\/+*\(\)\[\]\{\}.\'\"],?)*\].([^.]*)/
|
||||||
# unknown(maybe String)
|
message = $2
|
||||||
|
candidates = Array.instance_methods(true)
|
||||||
|
|
||||||
receiver = ""
|
when /^\.([^.]*)$/ # unknown(maybe String)
|
||||||
message = Regexp.quote($1)
|
message = Regexp.quote($1)
|
||||||
|
|
||||||
candidates = String.instance_methods(true)
|
candidates = String.instance_methods(true)
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
|
|
||||||
else
|
else
|
||||||
inclass = eval( VIM::evaluate("IsInClassDef()") )
|
inclass = eval( VIM::evaluate("IsInClassDef()") )
|
||||||
@@ -460,7 +447,6 @@ def get_completions(base)
|
|||||||
begin
|
begin
|
||||||
candidates = eval( "#{receiver}.instance_methods" )
|
candidates = eval( "#{receiver}.instance_methods" )
|
||||||
candidates += get_rails_helpers
|
candidates += get_rails_helpers
|
||||||
select_message(receiver, message, candidates)
|
|
||||||
rescue Exception
|
rescue Exception
|
||||||
found = nil
|
found = nil
|
||||||
end
|
end
|
||||||
@@ -470,24 +456,16 @@ def get_completions(base)
|
|||||||
if inclass == nil || found == nil
|
if inclass == nil || found == nil
|
||||||
candidates = eval("self.class.constants")
|
candidates = eval("self.class.constants")
|
||||||
candidates += get_buffer_classes
|
candidates += get_buffer_classes
|
||||||
|
message = receiver = input
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
candidates.delete_if { |x| x == nil }
|
||||||
candidates.uniq!
|
candidates.uniq!
|
||||||
candidates.sort!
|
candidates.sort!
|
||||||
(candidates|ReservedWords).grep(/^#{Regexp.quote(input)}/)
|
candidates = candidates.grep(/^#{Regexp.quote(message)}/) if message != nil
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
#print candidates
|
|
||||||
if message != nil && message.length > 0
|
|
||||||
rexp = '^%s' % message.downcase
|
|
||||||
candidates.delete_if do |c|
|
|
||||||
c.downcase.match( rexp )
|
|
||||||
$~ == nil
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
outp = ""
|
outp = ""
|
||||||
|
|
||||||
# tags = VIM::evaluate("taglist('^%s$')" %
|
|
||||||
valid = (candidates-Object.instance_methods)
|
valid = (candidates-Object.instance_methods)
|
||||||
|
|
||||||
rg = 0..valid.length
|
rg = 0..valid.length
|
||||||
@@ -502,24 +480,6 @@ def get_completions(base)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
def select_message(receiver, message, candidates)
|
|
||||||
#tags = VIM::evaluate("taglist('%s')" % receiver)
|
|
||||||
#print tags
|
|
||||||
candidates.grep(/^#{message}/).collect do |e|
|
|
||||||
case e
|
|
||||||
when /^[a-zA-Z_]/
|
|
||||||
receiver + "." + e
|
|
||||||
when /^[0-9]/
|
|
||||||
when *Operators
|
|
||||||
#receiver + " " + e
|
|
||||||
end
|
|
||||||
end
|
|
||||||
candidates.delete_if { |x| x == nil }
|
|
||||||
candidates.uniq!
|
|
||||||
candidates.sort!
|
|
||||||
end
|
|
||||||
|
|
||||||
# }}} ruby completion
|
# }}} ruby completion
|
||||||
RUBYEOF
|
RUBYEOF
|
||||||
endfunction
|
endfunction
|
||||||
@@ -527,4 +487,4 @@ endfunction
|
|||||||
let g:rubycomplete_rails_loaded = 0
|
let g:rubycomplete_rails_loaded = 0
|
||||||
|
|
||||||
call s:DefRuby()
|
call s:DefRuby()
|
||||||
" vim:tw=78:sw=4:ts=8:ft=vim:norl:
|
" vim:tw=78:sw=4:ts=8:et:ft=vim:norl:
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
*editing.txt* For Vim version 7.0f. Last change: 2006 Apr 17
|
*editing.txt* For Vim version 7.0f. Last change: 2006 Apr 29
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -343,12 +343,12 @@ CTRL-^ Edit the alternate file (equivalent to ":e #").
|
|||||||
separated by a non-filename (see 'isfname') and
|
separated by a non-filename (see 'isfname') and
|
||||||
non-numeric character. White space between the
|
non-numeric character. White space between the
|
||||||
filename, the separator and the number are ignored.
|
filename, the separator and the number are ignored.
|
||||||
Examples: >
|
Examples:
|
||||||
eval.c:10
|
eval.c:10 ~
|
||||||
eval.c @ 20
|
eval.c @ 20 ~
|
||||||
eval.c (30)
|
eval.c (30) ~
|
||||||
eval.c 40
|
eval.c 40 ~
|
||||||
<
|
|
||||||
*v_gF*
|
*v_gF*
|
||||||
{Visual}[count]gF Same as "v_gf".
|
{Visual}[count]gF Same as "v_gf".
|
||||||
|
|
||||||
|
727
runtime/keymap/kana.vim
Normal file
727
runtime/keymap/kana.vim
Normal file
@@ -0,0 +1,727 @@
|
|||||||
|
" This script was originally created by Rory McCann <ebelular at gmail dot com>.
|
||||||
|
" Dan Kenigsberg noticed some deficiencies and suggested this one instead.
|
||||||
|
"
|
||||||
|
" Maintainer: Rory McCann <ebelular at gmail dot com>
|
||||||
|
" Modified by: Edward L. Fox <edyfox at gmail dot com>
|
||||||
|
" Last Change: 2006-04-29 11:14:32
|
||||||
|
"
|
||||||
|
"
|
||||||
|
"
|
||||||
|
" Kana.kmap (Japanese Phonograms)
|
||||||
|
"
|
||||||
|
" Converted from Gaspar Sinai's yudit 2.7.6
|
||||||
|
" GNU (C) Gaspar Sinai <gsinai@yudit.org>
|
||||||
|
"
|
||||||
|
" WARNING
|
||||||
|
" -------
|
||||||
|
" This version of Kana.kmap is different from the one that has been used
|
||||||
|
" with yudit-2.7.2 or earlier. The main difference is that this kmap is
|
||||||
|
" arranged in such a way that it complies with an authorized Japanese
|
||||||
|
" transliteration. As a result, backward compatibility is not guaranteed.
|
||||||
|
"
|
||||||
|
" NOTE
|
||||||
|
" ----
|
||||||
|
" 1. In general, the transliteration is based on Japanese Government's
|
||||||
|
" Cabinet Notification 1 (Dec. 9, 1954).
|
||||||
|
"
|
||||||
|
" Summary:
|
||||||
|
"
|
||||||
|
" (1) To transliterate Japanese language, Table 1 should be used
|
||||||
|
" primarily.
|
||||||
|
" (2) Table 2 may be used only when existing conventions such as
|
||||||
|
" international relationship should be respected.
|
||||||
|
" (3) Other transliteration is acceptable only when neither Table 1
|
||||||
|
" nor Table 2 gives any specification of the sound in question
|
||||||
|
"
|
||||||
|
" For details, refer to
|
||||||
|
"
|
||||||
|
" http://xembho.tripod.com/siryo/naikaku_kokuzi.html
|
||||||
|
"
|
||||||
|
" 2. The specification instructed by the Cabinet Notification is rather
|
||||||
|
" inadequate even for daily use. At the present time there are thus
|
||||||
|
" many unauthorized but widely accepted conventions used together with
|
||||||
|
" the authorized transliteration. This kmap contains some of them for
|
||||||
|
" user's convenience (cf. Hiragana 3 and Katakana 3).
|
||||||
|
"
|
||||||
|
" 3. For the unicode mapping relevant to this kmap, refer to 3075--30F5 of
|
||||||
|
"
|
||||||
|
" http://www.macchiato.com/unicode/charts.html
|
||||||
|
"
|
||||||
|
" HISTORY
|
||||||
|
" -------
|
||||||
|
" 2005-01-11 <danken@cs.technion.ac.il>
|
||||||
|
" * Converted to Vim format.
|
||||||
|
" 2003-01-22 <kazunobu.kuriyama@nifty.com>
|
||||||
|
"
|
||||||
|
" * Submitted to gsinai@yudit.org
|
||||||
|
"
|
||||||
|
" ============================================================================
|
||||||
|
|
||||||
|
scriptencoding utf-8
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Kigou (Punctuation etc.)
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
let b:keymap_name = "kana"
|
||||||
|
|
||||||
|
loadkeymap
|
||||||
|
"0x20 0x3000
|
||||||
|
, 、
|
||||||
|
. 。
|
||||||
|
,, 〃
|
||||||
|
|
||||||
|
|
||||||
|
xx 〆
|
||||||
|
@ 〇
|
||||||
|
< 〈
|
||||||
|
> 〉
|
||||||
|
<< 《
|
||||||
|
>> 》
|
||||||
|
{ 「
|
||||||
|
} 」
|
||||||
|
{{ 『
|
||||||
|
}} 』
|
||||||
|
[.( 【
|
||||||
|
).] 】
|
||||||
|
|
||||||
|
|
||||||
|
[ 〔
|
||||||
|
] 〕
|
||||||
|
[( 〖
|
||||||
|
)] 〗
|
||||||
|
|
||||||
|
|
||||||
|
[[ 〚
|
||||||
|
]] 〛
|
||||||
|
|
||||||
|
|
||||||
|
.. ・
|
||||||
|
- ー
|
||||||
|
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Hiragana 1 --- Table 1, Cabinet Notification No. 1 (Dec. 9, 1954)
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
a あ
|
||||||
|
i い
|
||||||
|
u う
|
||||||
|
e え
|
||||||
|
o お
|
||||||
|
|
||||||
|
ka か
|
||||||
|
ki き
|
||||||
|
ku く
|
||||||
|
ke け
|
||||||
|
ko こ
|
||||||
|
|
||||||
|
sa さ
|
||||||
|
si し
|
||||||
|
su す
|
||||||
|
se せ
|
||||||
|
so そ
|
||||||
|
|
||||||
|
ta た
|
||||||
|
ti ち
|
||||||
|
tu つ
|
||||||
|
te て
|
||||||
|
to と
|
||||||
|
|
||||||
|
na な
|
||||||
|
ni に
|
||||||
|
nu ぬ
|
||||||
|
ne ね
|
||||||
|
no の
|
||||||
|
|
||||||
|
ha は
|
||||||
|
hi ひ
|
||||||
|
hu ふ
|
||||||
|
he へ
|
||||||
|
ho ほ
|
||||||
|
|
||||||
|
ma ま
|
||||||
|
mi み
|
||||||
|
mu む
|
||||||
|
me め
|
||||||
|
mo も
|
||||||
|
|
||||||
|
ya や
|
||||||
|
yu ゆ
|
||||||
|
yo よ
|
||||||
|
|
||||||
|
ra ら
|
||||||
|
ri り
|
||||||
|
ru る
|
||||||
|
re れ
|
||||||
|
ro ろ
|
||||||
|
|
||||||
|
wa わ
|
||||||
|
|
||||||
|
ga が
|
||||||
|
gi ぎ
|
||||||
|
gu ぐ
|
||||||
|
ge げ
|
||||||
|
go ご
|
||||||
|
|
||||||
|
za ざ
|
||||||
|
zi じ
|
||||||
|
zu ず
|
||||||
|
ze ぜ
|
||||||
|
zo ぞ
|
||||||
|
|
||||||
|
da だ
|
||||||
|
de で
|
||||||
|
do ど
|
||||||
|
|
||||||
|
ba ば
|
||||||
|
bi び
|
||||||
|
bu ぶ
|
||||||
|
be べ
|
||||||
|
bo ぼ
|
||||||
|
|
||||||
|
pa ぱ
|
||||||
|
pi ぴ
|
||||||
|
pu ぷ
|
||||||
|
pe ぺ
|
||||||
|
po ぽ
|
||||||
|
|
||||||
|
kya きゃ
|
||||||
|
kyu きゅ
|
||||||
|
kyo きょ
|
||||||
|
|
||||||
|
sya しゃ
|
||||||
|
syu しゅ
|
||||||
|
syo しょ
|
||||||
|
|
||||||
|
tya ちゃ
|
||||||
|
tyu ちゅ
|
||||||
|
tyo ちょ
|
||||||
|
|
||||||
|
nya にゃ
|
||||||
|
nyu にゅ
|
||||||
|
nyo にょ
|
||||||
|
|
||||||
|
hya ひゃ
|
||||||
|
hyu ひゅ
|
||||||
|
hyo ひょ
|
||||||
|
|
||||||
|
mya みゃ
|
||||||
|
myu みゅ
|
||||||
|
myo みょ
|
||||||
|
|
||||||
|
rya りゃ
|
||||||
|
ryu りゅ
|
||||||
|
ryo りょ
|
||||||
|
|
||||||
|
gya ぎゃ
|
||||||
|
gyu ぎゅ
|
||||||
|
gyo ぎょ
|
||||||
|
|
||||||
|
zya じゃ
|
||||||
|
zyu じゅ
|
||||||
|
zyo じょ
|
||||||
|
|
||||||
|
bya びゃ
|
||||||
|
byu びゅ
|
||||||
|
byo びょ
|
||||||
|
|
||||||
|
pya ぴゃ
|
||||||
|
pyu ぴゅ
|
||||||
|
pyo ぴょ
|
||||||
|
|
||||||
|
n ん
|
||||||
|
n' ん
|
||||||
|
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Hiragana 2 --- Table 2, Cabinet Notification No. 1 (Dec. 9, 1954)
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
sha しゃ
|
||||||
|
shi し
|
||||||
|
shu しゅ
|
||||||
|
sho しょ
|
||||||
|
|
||||||
|
tsu つ
|
||||||
|
|
||||||
|
cha ちゃ
|
||||||
|
chi ち
|
||||||
|
chu ちゅ
|
||||||
|
cho ちょ
|
||||||
|
|
||||||
|
fu ふ
|
||||||
|
|
||||||
|
ja じゃ
|
||||||
|
ji じ
|
||||||
|
ju じゅ
|
||||||
|
jo じょ
|
||||||
|
|
||||||
|
di ぢ
|
||||||
|
du づ
|
||||||
|
dya ぢゃ
|
||||||
|
dyu ぢゅ
|
||||||
|
dyo ぢょ
|
||||||
|
|
||||||
|
kwa くゎ
|
||||||
|
gwa ぐゎ
|
||||||
|
|
||||||
|
wo を
|
||||||
|
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Hiragana 3 --- Conventional transliterations
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
" Small Hiragana: The prefix X is never pronounced. It is used as something
|
||||||
|
" like an escape character.
|
||||||
|
xa ぁ
|
||||||
|
xi ぃ
|
||||||
|
xu ぅ
|
||||||
|
xe ぇ
|
||||||
|
xo ぉ
|
||||||
|
|
||||||
|
xtu っ
|
||||||
|
|
||||||
|
xya ゃ
|
||||||
|
xyu ゅ
|
||||||
|
xyo ょ
|
||||||
|
|
||||||
|
xwa ゎ
|
||||||
|
|
||||||
|
" Historic `wi' and `we'
|
||||||
|
wi ゐ
|
||||||
|
we ゑ
|
||||||
|
|
||||||
|
" Preceded by a small `tu'
|
||||||
|
kka っか
|
||||||
|
kki っき
|
||||||
|
kku っく
|
||||||
|
kke っけ
|
||||||
|
kko っこ
|
||||||
|
|
||||||
|
ssa っさ
|
||||||
|
ssi っし
|
||||||
|
ssu っす
|
||||||
|
sse っせ
|
||||||
|
sso っそ
|
||||||
|
|
||||||
|
tta った
|
||||||
|
tti っち
|
||||||
|
ttu っつ
|
||||||
|
tte って
|
||||||
|
tto っと
|
||||||
|
|
||||||
|
hha っは
|
||||||
|
hhi っひ
|
||||||
|
hhu っふ
|
||||||
|
hhe っへ
|
||||||
|
hho っほ
|
||||||
|
|
||||||
|
mma っま
|
||||||
|
mmi っみ
|
||||||
|
mmu っむ
|
||||||
|
mme っめ
|
||||||
|
mmo っも
|
||||||
|
|
||||||
|
yya っや
|
||||||
|
yyu っゆ
|
||||||
|
yyo っよ
|
||||||
|
|
||||||
|
rra っら
|
||||||
|
rri っり
|
||||||
|
rru っる
|
||||||
|
rre っれ
|
||||||
|
rro っろ
|
||||||
|
|
||||||
|
wwa っわ
|
||||||
|
|
||||||
|
gga っが
|
||||||
|
ggi っぎ
|
||||||
|
ggu っぐ
|
||||||
|
gge っげ
|
||||||
|
ggo っご
|
||||||
|
|
||||||
|
zza っざ
|
||||||
|
zzi っじ
|
||||||
|
zzu っず
|
||||||
|
zze っぜ
|
||||||
|
zzo っぞ
|
||||||
|
|
||||||
|
dda っだ
|
||||||
|
ddi っぢ
|
||||||
|
ddu っづ
|
||||||
|
dde っで
|
||||||
|
ddo っど
|
||||||
|
|
||||||
|
bba っば
|
||||||
|
bbi っび
|
||||||
|
bbu っぶ
|
||||||
|
bbe っべ
|
||||||
|
bbo っぼ
|
||||||
|
|
||||||
|
ppa っぱ
|
||||||
|
ppi っぴ
|
||||||
|
ppu っぷ
|
||||||
|
ppe っぺ
|
||||||
|
ppo っぽ
|
||||||
|
|
||||||
|
" Proceded by a small `tu' and followed by a small 'ya', 'yu' or 'yo'
|
||||||
|
kkya っきゃ
|
||||||
|
kkyu っきゅ
|
||||||
|
kkyo っきょ
|
||||||
|
|
||||||
|
ssya っしゃ
|
||||||
|
ssyu っしゅ
|
||||||
|
ssyo っしょ
|
||||||
|
|
||||||
|
ttya っちゃ
|
||||||
|
ttyu っちゅ
|
||||||
|
ttyo っちょ
|
||||||
|
|
||||||
|
hhya っひゃ
|
||||||
|
hhyu っひゅ
|
||||||
|
hhyo っひょ
|
||||||
|
|
||||||
|
mmya っみゃ
|
||||||
|
mmyu っみゅ
|
||||||
|
mmyo っみょ
|
||||||
|
|
||||||
|
rrya っりゃ
|
||||||
|
rryu っりゅ
|
||||||
|
rryo っりょ
|
||||||
|
|
||||||
|
ggya っぎゃ
|
||||||
|
ggyu っぎゅ
|
||||||
|
ggyo っぎょ
|
||||||
|
|
||||||
|
zzya っじゃ
|
||||||
|
zzyu っじゅ
|
||||||
|
zzyo っじょ
|
||||||
|
|
||||||
|
bbya っびゃ
|
||||||
|
bbyu っびゅ
|
||||||
|
bbyo っびょ
|
||||||
|
|
||||||
|
ppya っぴゃ
|
||||||
|
ppyu っぴゅ
|
||||||
|
ppyo っぴょ
|
||||||
|
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Katakana 1 --- Table 1, Cabinet Notification No. 1 (Dec. 9, 1954)
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
A ア
|
||||||
|
I イ
|
||||||
|
U ウ
|
||||||
|
E エ
|
||||||
|
O オ
|
||||||
|
|
||||||
|
KA カ
|
||||||
|
KI キ
|
||||||
|
KU ク
|
||||||
|
KE ケ
|
||||||
|
KO コ
|
||||||
|
|
||||||
|
SA サ
|
||||||
|
SI シ
|
||||||
|
SU ス
|
||||||
|
SE セ
|
||||||
|
SO ソ
|
||||||
|
|
||||||
|
TA タ
|
||||||
|
TI チ
|
||||||
|
TU ツ
|
||||||
|
TE テ
|
||||||
|
TO ト
|
||||||
|
|
||||||
|
NA ナ
|
||||||
|
NI ニ
|
||||||
|
NU ヌ
|
||||||
|
NE ネ
|
||||||
|
NO ノ
|
||||||
|
|
||||||
|
HA ハ
|
||||||
|
HI ヒ
|
||||||
|
HU フ
|
||||||
|
HE ヘ
|
||||||
|
HO ホ
|
||||||
|
|
||||||
|
MA マ
|
||||||
|
MI ミ
|
||||||
|
MU ム
|
||||||
|
ME メ
|
||||||
|
MO モ
|
||||||
|
|
||||||
|
YA ヤ
|
||||||
|
YU ユ
|
||||||
|
YO ヨ
|
||||||
|
|
||||||
|
RA ラ
|
||||||
|
RI リ
|
||||||
|
RU ル
|
||||||
|
RE レ
|
||||||
|
RO ロ
|
||||||
|
|
||||||
|
WA ワ
|
||||||
|
|
||||||
|
GA ガ
|
||||||
|
GI ギ
|
||||||
|
GU グ
|
||||||
|
GE ゲ
|
||||||
|
GO ゴ
|
||||||
|
|
||||||
|
ZA ザ
|
||||||
|
ZI ジ
|
||||||
|
ZU ズ
|
||||||
|
ZE ゼ
|
||||||
|
ZO ゾ
|
||||||
|
|
||||||
|
DA ダ
|
||||||
|
DE デ
|
||||||
|
DO ド
|
||||||
|
|
||||||
|
BA バ
|
||||||
|
BI ビ
|
||||||
|
BU ブ
|
||||||
|
BE ベ
|
||||||
|
BO ボ
|
||||||
|
|
||||||
|
PA パ
|
||||||
|
PI ピ
|
||||||
|
PU プ
|
||||||
|
PE ペ
|
||||||
|
PO ポ
|
||||||
|
|
||||||
|
KYA キャ
|
||||||
|
KYU キュ
|
||||||
|
KYO キョ
|
||||||
|
|
||||||
|
SYA シャ
|
||||||
|
SYU シュ
|
||||||
|
SYO ショ
|
||||||
|
|
||||||
|
TYA チャ
|
||||||
|
TYU チュ
|
||||||
|
TYO チョ
|
||||||
|
|
||||||
|
NYA ニャ
|
||||||
|
NYU ニュ
|
||||||
|
NYO ニョ
|
||||||
|
|
||||||
|
HYA ヒャ
|
||||||
|
HYU ヒュ
|
||||||
|
HYO ヒョ
|
||||||
|
|
||||||
|
MYA ミャ
|
||||||
|
MYU ミュ
|
||||||
|
MYO ミョ
|
||||||
|
|
||||||
|
RYA リャ
|
||||||
|
RYU リュ
|
||||||
|
RYO リョ
|
||||||
|
|
||||||
|
GYA ギャ
|
||||||
|
GYU ギュ
|
||||||
|
GYO ギョ
|
||||||
|
|
||||||
|
ZYA ジャ
|
||||||
|
ZYU ジュ
|
||||||
|
ZYO ジョ
|
||||||
|
|
||||||
|
BYA ビャ
|
||||||
|
BYU ビュ
|
||||||
|
BYO ビョ
|
||||||
|
|
||||||
|
PYA ピャ
|
||||||
|
PYU ピュ
|
||||||
|
PYO ピョ
|
||||||
|
|
||||||
|
N ン
|
||||||
|
N' ン
|
||||||
|
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Katakana 2 --- Table 2, Cabinet Notification No. 1 (Dec. 9, 1954)
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
SHA シャ
|
||||||
|
SHI シ
|
||||||
|
SHU シュ
|
||||||
|
SHO ショ
|
||||||
|
|
||||||
|
TSU ツ
|
||||||
|
|
||||||
|
CHA チャ
|
||||||
|
CHI チ
|
||||||
|
CHU チュ
|
||||||
|
CHO チョ
|
||||||
|
|
||||||
|
FU フ
|
||||||
|
|
||||||
|
JA ジャ
|
||||||
|
JI ジ
|
||||||
|
JU ジュ
|
||||||
|
JO ジョ
|
||||||
|
|
||||||
|
DI ヂ
|
||||||
|
DU ヅ
|
||||||
|
DYA ヂャ
|
||||||
|
DYU ヂュ
|
||||||
|
DYO ヂョ
|
||||||
|
|
||||||
|
KWA クヮ
|
||||||
|
GWA グヮ
|
||||||
|
|
||||||
|
WO ヲ
|
||||||
|
|
||||||
|
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
" Katakana 3 --- Conventional transliterations
|
||||||
|
" ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
" Small Katakana: The prefix X is never pronounced. It is used as something
|
||||||
|
" like an escape character.
|
||||||
|
XA ァ
|
||||||
|
XI ィ
|
||||||
|
XU ゥ
|
||||||
|
XE ェ
|
||||||
|
XO ォ
|
||||||
|
|
||||||
|
XTU ッ
|
||||||
|
|
||||||
|
XYA ャ
|
||||||
|
XYU ュ
|
||||||
|
XYO ョ
|
||||||
|
|
||||||
|
XWA ヮ
|
||||||
|
|
||||||
|
" Used only for counting someone or something
|
||||||
|
XKA ヵ
|
||||||
|
XKE ヶ
|
||||||
|
|
||||||
|
" Historic `wi' and `we'
|
||||||
|
WI ヰ
|
||||||
|
WE ヱ
|
||||||
|
|
||||||
|
" Used for the sound `v' of European languages
|
||||||
|
VA ヴァ
|
||||||
|
VI ヴィ
|
||||||
|
VU ヴ
|
||||||
|
VE ヴェ
|
||||||
|
VO ヴォ
|
||||||
|
|
||||||
|
VYU ヴュ
|
||||||
|
|
||||||
|
" Preceded by a small `tu'
|
||||||
|
KKA ッカ
|
||||||
|
KKI ッキ
|
||||||
|
KKU ック
|
||||||
|
KKE ッケ
|
||||||
|
KKO ッコ
|
||||||
|
|
||||||
|
SSA ッサ
|
||||||
|
SSI ッシ
|
||||||
|
SSU ッス
|
||||||
|
SSE ッセ
|
||||||
|
SSO ッソ
|
||||||
|
|
||||||
|
TTA ッタ
|
||||||
|
TTI ッチ
|
||||||
|
TTU ッツ
|
||||||
|
TTE ッテ
|
||||||
|
TTO ット
|
||||||
|
|
||||||
|
HHA ッハ
|
||||||
|
HHI ッヒ
|
||||||
|
HHU ッフ
|
||||||
|
HHE ッヘ
|
||||||
|
HHO ッホ
|
||||||
|
|
||||||
|
MMA ッマ
|
||||||
|
MMI ッミ
|
||||||
|
MMU ッム
|
||||||
|
MME ッメ
|
||||||
|
MMO ッモ
|
||||||
|
|
||||||
|
YYA ッヤ
|
||||||
|
YYU ッユ
|
||||||
|
YYO ッヨ
|
||||||
|
|
||||||
|
RRA ッラ
|
||||||
|
RRI ッリ
|
||||||
|
RRU ッル
|
||||||
|
RRE ッレ
|
||||||
|
RRO ッロ
|
||||||
|
|
||||||
|
WWA ッワ
|
||||||
|
|
||||||
|
GGA ッガ
|
||||||
|
GGI ッギ
|
||||||
|
GGU ッグ
|
||||||
|
GGE ッゲ
|
||||||
|
GGO ッゴ
|
||||||
|
|
||||||
|
ZZA ッザ
|
||||||
|
ZZI ッジ
|
||||||
|
ZZU ッズ
|
||||||
|
ZZE ッゼ
|
||||||
|
ZZO ッゾ
|
||||||
|
|
||||||
|
DDA ッダ
|
||||||
|
DDI ッヂ
|
||||||
|
DDU ッヅ
|
||||||
|
DDE ッデ
|
||||||
|
DDO ッド
|
||||||
|
|
||||||
|
BBA ッバ
|
||||||
|
BBI ッビ
|
||||||
|
BBU ッブ
|
||||||
|
BBE ッベ
|
||||||
|
BBO ッボ
|
||||||
|
|
||||||
|
PPA ッパ
|
||||||
|
PPI ッピ
|
||||||
|
PPU ップ
|
||||||
|
PPE ッペ
|
||||||
|
PPO ッポ
|
||||||
|
|
||||||
|
" Proceded by a small `tu' and followed by a small 'ya', 'yu' or 'yo'
|
||||||
|
KKYA ッキャ
|
||||||
|
KKYU ッキュ
|
||||||
|
KKYO ッキョ
|
||||||
|
|
||||||
|
SSYA ッシャ
|
||||||
|
SSYU ッシュ
|
||||||
|
SSYO ッショ
|
||||||
|
|
||||||
|
TTYA ッチャ
|
||||||
|
TTYU ッチュ
|
||||||
|
TTYO ッチョ
|
||||||
|
|
||||||
|
HHYA ッヒャ
|
||||||
|
HHYU ッヒュ
|
||||||
|
HHYO ッヒョ
|
||||||
|
|
||||||
|
MMYA ッミャ
|
||||||
|
MMYU ッミュ
|
||||||
|
MMYO ッミョ
|
||||||
|
|
||||||
|
RRYA ッリャ
|
||||||
|
RRYU ッリュ
|
||||||
|
RRYO ッリョ
|
||||||
|
|
||||||
|
GGYA ッギャ
|
||||||
|
GGYU ッギュ
|
||||||
|
GGYO ッギョ
|
||||||
|
|
||||||
|
ZZYA ッジャ
|
||||||
|
ZZYU ッジュ
|
||||||
|
ZZYO ッジョ
|
||||||
|
|
||||||
|
BBYA ッビャ
|
||||||
|
BBYU ッビュ
|
||||||
|
BBYO ッビョ
|
||||||
|
|
||||||
|
PPYA ッピャ
|
||||||
|
PPYU ッピュ
|
||||||
|
PPYO ッピョ
|
||||||
|
|
||||||
|
|
@@ -13,19 +13,20 @@ syn match sisu_error contains=sisu_link,sisu_error_wspace "<![^ei]\S\+!>"
|
|||||||
"% 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 "\~^"
|
||||||
syn match sisu_contain "</\?sub>"
|
syn match sisu_contain contains=@NoSpell "</\?sub>"
|
||||||
syn match sisu_break "<br>\|<br />"
|
syn match sisu_break contains=@NoSpell "<br>\|<br />"
|
||||||
syn match sisu_control "<p>\|</p>\|<p />\|<:p[bn]>"
|
syn match sisu_control contains=@NoSpell "<p>\|</p>\|<p />\|<:p[bn]>"
|
||||||
syn match sisu_html "<center>\|</center>"
|
syn match sisu_html "<center>\|</center>"
|
||||||
syn match sisu_marktail "[~-]#"
|
syn match sisu_marktail "[~-]#"
|
||||||
syn match sisu_html "<td>\|<td \|<tr>\|</td>\|</tr>\|<table>\|<table \|</table>"
|
syn match sisu_html contains=@NoSpell "<td>\|<td \|<tr>\|</td>\|</tr>\|<table>\|<table \|</table>"
|
||||||
syn match sisu_control "\""
|
syn match sisu_control "\""
|
||||||
syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"
|
syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"
|
||||||
syn match sisu_number "[0-9a-f]\{32\}\|[0-9a-f]\{64\}"
|
syn match sisu_number contains=@NoSpell "[0-9a-f]\{32\}\|[0-9a-f]\{64\}"
|
||||||
|
syn match sisu_link contains=@NoSpell "\(http://\|\.\.\/\)\S\+"
|
||||||
"metaverse specific
|
"metaverse specific
|
||||||
syn match sisu_ocn "<\~\d\+;\w\d\+;\w\d\+>"
|
syn match sisu_ocn contains=@NoSpell "<\~\d\+;\w\d\+;\w\d\+>"
|
||||||
syn match sisu_marktail "<\~#>"
|
syn match sisu_marktail "<\~#>"
|
||||||
syn match sisu_markpara "<:i[12]>"
|
syn match sisu_markpara contains=@NoSpell "<:i[12]>"
|
||||||
syn match sisu_link " \*\~\S\+"
|
syn match sisu_link " \*\~\S\+"
|
||||||
syn match sisu_action "^<:insert\d\+>"
|
syn match sisu_action "^<:insert\d\+>"
|
||||||
syn match sisu_contain "<:e>"
|
syn match sisu_contain "<:e>"
|
||||||
@@ -34,12 +35,11 @@ endif
|
|||||||
syn match sisu_number "\<\(0x\x\+\|0b[01]\+\|0\o\+\|0\.\d\+\|0\|[1-9][\.0-9_]*\)\>"
|
syn match sisu_number "\<\(0x\x\+\|0b[01]\+\|0\o\+\|0\.\d\+\|0\|[1-9][\.0-9_]*\)\>"
|
||||||
syn match sisu_number "?\(\\M-\\C-\|\\c\|\\C-\|\\M-\)\=\(\\\o\{3}\|\\x\x\{2}\|\\\=\w\)"
|
syn match sisu_number "?\(\\M-\\C-\|\\c\|\\C-\|\\M-\)\=\(\\\o\{3}\|\\x\x\{2}\|\\\=\w\)"
|
||||||
"% 8 Tuned Error - is error if not already matched
|
"% 8 Tuned Error - is error if not already matched
|
||||||
syn match sisu_error "[\~/\*!_]{\|}[\~/\*!_]" contains=sisu_error
|
syn match sisu_error contains=sisu_error "[\~/\*!_]{\|}[\~/\*!_]"
|
||||||
syn match sisu_error "<a href\|</a>]" contains=sisu_error
|
syn match sisu_error contains=sisu_error "<a href\|</a>]"
|
||||||
"% 7 Simple Enclosed Markup:
|
"% 7 Simple Enclosed Markup:
|
||||||
" Simple Markup:
|
" Simple Markup:
|
||||||
"% url/link
|
"% url/link
|
||||||
syn region sisu_link contains=sisu_error,@NoSpell matchgroup=sisu_link start="\(http://\|\.\.\/\)" end="\(\s\|$\)"
|
|
||||||
syn region sisu_link contains=sisu_error,sisu_error_wspace matchgroup=sisu_action start="^<<\s*|[a-zA-Z0-9^._-]\+|@|[a-zA-Z0-9^._-]\+|"rs=s+2 end="$"
|
syn region sisu_link contains=sisu_error,sisu_error_wspace matchgroup=sisu_action start="^<<\s*|[a-zA-Z0-9^._-]\+|@|[a-zA-Z0-9^._-]\+|"rs=s+2 end="$"
|
||||||
"% header
|
"% header
|
||||||
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="$"
|
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="$"
|
||||||
@@ -47,30 +47,30 @@ syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_conten
|
|||||||
syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^@\S\+:[+-]\?\s"rs=e-1 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="^@\S\+:[+-]\?\s"rs=e-1 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="^@\(tags\?\|date\):\s\+"rs=e-1 end="\n$"
|
syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^@\(tags\?\|date\):\s\+"rs=e-1 end="\n$"
|
||||||
"% 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_error,sisu_error_wspace,@Spell matchgroup=sisu_structure start="^\([1-8]\|:\?[A-C]\)\~\(\S\+\|[^-]\)" 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 matchgroup=sisu_structure start="^\([1-8]\|:\?[A-C]\)\~\(\S\+\|[^-]\)" end="$"
|
||||||
"% grouped text
|
"% grouped text
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,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 matchgroup=sisu_contain start="table{.\+" end="}table"
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,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 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,@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 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=@Spell,sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,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_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,@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_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_identifier,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 matchgroup=sisu_link start="{" end="}\(\(http://\|\.\./\)\S\+\|image\)" oneline
|
||||||
"% some line operations
|
"% some line operations
|
||||||
syn region sisu_control contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace,@Spell matchgroup=sisu_control start="\(\(^\| \)!_ \|<:b>\)" end="$"
|
syn region sisu_control contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace matchgroup=sisu_control start="\(\(^\| \)!_ \|<:b>\)" end="$"
|
||||||
syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_linked,sisu_error,sisu_error_wspace,@Spell matchgroup=sisu_markpara start="^_\([12*]\|[12]\*\) " end="$"
|
syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_\([12*]\|[12]\*\) " end="$"
|
||||||
syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_linked,sisu_error,sisu_error_wspace,@Spell matchgroup=sisu_markpara start="^\(#[ 1]\|_# \)" end="$"
|
syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^\(#[ 1]\|_# \)" end="$"
|
||||||
syn region sisu_comment contains=@Spell matchgroup=sisu_comment start="^%\{1,2\} " end="$"
|
syn region sisu_comment matchgroup=sisu_comment start="^%\{1,2\} " end="$"
|
||||||
"% font face curly brackets
|
"% font face curly brackets
|
||||||
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start="\*{" end="}\*"
|
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\*{" end="}\*"
|
||||||
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start="!{" end="}!"
|
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="!{" end="}!"
|
||||||
syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start="_{" end="}_"
|
syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="_{" end="}_"
|
||||||
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start="/{" end="}/"
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="/{" end="}/"
|
||||||
syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start="+{" end="}+"
|
syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="+{" end="}+"
|
||||||
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start="\^{" end="}\^"
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\^{" end="}\^"
|
||||||
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell matchgroup=sisu_fontface start=",{" end="},"
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error 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_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
|
||||||
@@ -78,18 +78,18 @@ syn region sisu_control contains=sisu_error matchgroup=sisu_control start="\([ (
|
|||||||
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
|
||||||
"% misc
|
"% misc
|
||||||
syn region sisu_identifier contains=sisu_error matchgroup=sisu_fontface start="\^[^ {\|\n\\]"rs=s+1 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 html
|
"% metaverse html (flagged as errors for filetype sisu)
|
||||||
syn region sisu_number contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell,sisu_mark matchgroup=sisu_html start="<b>" end="</b>" skip="\n" oneline
|
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<b>" end="</b>" skip="\n" oneline
|
||||||
syn region sisu_number contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,@Spell,sisu_mark matchgroup=sisu_html start="<em>" end="</em>" oneline
|
syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<em>" end="</em>" skip="\n" oneline
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,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_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,@Spell,sisu_mark matchgroup=sisu_html start="<u>" end="</u>" skip="\n" oneline
|
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,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,@Spell,sisu_mark matchgroup=sisu_html start="<ins>" end="</ins>" skip="\\\\\|\\'" oneline
|
syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,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
|
syn region sisu_identifier contains=sisu_error matchgroup=sisu_html start="<del>" end="</del>" oneline
|
||||||
"% metaverse <:>
|
"% metaverse <:>
|
||||||
syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,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 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>"
|
||||||
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,@Spell matchgroup=sisu_contain start="<:alt>" end="<:alt[-_]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 matchgroup=sisu_contain start="<:alt>" end="<:alt[-_]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,@Spell matchgroup=sisu_contain start="<:poem>" end="<:poem[-_]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 matchgroup=sisu_contain start="<:poem>" end="<:poem[-_]end>"
|
||||||
"% 6 Expensive Mode
|
"% 6 Expensive Mode
|
||||||
" Expensive Mode:
|
" Expensive Mode:
|
||||||
if !exists("sisu_no_expensive")
|
if !exists("sisu_no_expensive")
|
||||||
@@ -118,6 +118,7 @@ syn match sisu_error contains=sisu_error "{\~^\S\+"
|
|||||||
syn match sisu_error contains=sisu_error "[_/\*!^]{[ .,:;?><]*}[_/\*!^]"
|
syn match sisu_error contains=sisu_error "[_/\*!^]{[ .,:;?><]*}[_/\*!^]"
|
||||||
syn match sisu_error contains=sisu_error "[^ (\"'(\[][_/\*!]{\|}[_/\*!][a-zA-Z0-9)\]\"']"
|
syn match sisu_error contains=sisu_error "[^ (\"'(\[][_/\*!]{\|}[_/\*!][a-zA-Z0-9)\]\"']"
|
||||||
syn match sisu_error contains=sisu_error "<dir>"
|
syn match sisu_error contains=sisu_error "<dir>"
|
||||||
|
"errors for filetype sisu, though not error in 'metaverse':
|
||||||
syn match sisu_error contains=sisu_error,sisu_match,sisu_strikeout,sisu_contain,sisu_content_alt,sisu_mark,sisu_break,sisu_number "<[a-zA-Z\/]\+>"
|
syn match sisu_error contains=sisu_error,sisu_match,sisu_strikeout,sisu_contain,sisu_content_alt,sisu_mark,sisu_break,sisu_number "<[a-zA-Z\/]\+>"
|
||||||
syn match sisu_error "/\?<\([biu]\)>[^(</\1>)]\{-}\n\n"
|
syn match sisu_error "/\?<\([biu]\)>[^(</\1>)]\{-}\n\n"
|
||||||
"% 3 Error Exceptions?
|
"% 3 Error Exceptions?
|
||||||
|
@@ -1032,6 +1032,38 @@ ins_typebuf(str, noremap, offset, nottyped, silent)
|
|||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Put character "c" back into the typeahead buffer.
|
||||||
|
* Can be used for a character obtained by vgetc() that needs to be put back.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
ins_char_typebuf(c)
|
||||||
|
int c;
|
||||||
|
{
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
char_u buf[MB_MAXBYTES];
|
||||||
|
#else
|
||||||
|
char_u buf[4];
|
||||||
|
#endif
|
||||||
|
if (IS_SPECIAL(c))
|
||||||
|
{
|
||||||
|
buf[0] = K_SPECIAL;
|
||||||
|
buf[1] = K_SECOND(c);
|
||||||
|
buf[2] = K_THIRD(c);
|
||||||
|
buf[3] = NUL;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
buf[(*mb_char2bytes)(c, buf)] = NUL;
|
||||||
|
#else
|
||||||
|
buf[0] = c;
|
||||||
|
buf[1] = NUL;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
(void)ins_typebuf(buf, REMAP_YES, 0, !KeyTyped, FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return TRUE if the typeahead buffer was changed (while waiting for a
|
* Return TRUE if the typeahead buffer was changed (while waiting for a
|
||||||
* character to arrive). Happens when a message was received from a client or
|
* character to arrive). Happens when a message was received from a client or
|
||||||
|
@@ -1004,13 +1004,9 @@ wait_return(redraw)
|
|||||||
#endif
|
#endif
|
||||||
if (vim_strchr((char_u *)"\r\n ", c) == NULL && c != Ctrl_C)
|
if (vim_strchr((char_u *)"\r\n ", c) == NULL && c != Ctrl_C)
|
||||||
{
|
{
|
||||||
char_u buf[2];
|
|
||||||
|
|
||||||
/* Put the character back in the typeahead buffer. Don't use the
|
/* Put the character back in the typeahead buffer. Don't use the
|
||||||
* stuff buffer, because lmaps wouldn't work. */
|
* stuff buffer, because lmaps wouldn't work. */
|
||||||
buf[0] = c;
|
ins_char_typebuf(c);
|
||||||
buf[1] = NUL;
|
|
||||||
ins_typebuf(buf, REMAP_YES, 0, !KeyTyped, FALSE);
|
|
||||||
do_redraw = TRUE; /* need a redraw even though there is
|
do_redraw = TRUE; /* need a redraw even though there is
|
||||||
typeahead */
|
typeahead */
|
||||||
}
|
}
|
||||||
|
12
src/normal.c
12
src/normal.c
@@ -648,23 +648,13 @@ normal_cmd(oap, toplevel)
|
|||||||
&& VIsual_select
|
&& VIsual_select
|
||||||
&& (vim_isprintc(c) || c == NL || c == CAR || c == K_KENTER))
|
&& (vim_isprintc(c) || c == NL || c == CAR || c == K_KENTER))
|
||||||
{
|
{
|
||||||
# ifdef FEAT_MBYTE
|
|
||||||
char_u buf[MB_MAXBYTES + 1];
|
|
||||||
|
|
||||||
buf[(*mb_char2bytes)(c, buf)] = NUL;
|
|
||||||
# else
|
|
||||||
char_u buf[2];
|
|
||||||
|
|
||||||
buf[0] = c;
|
|
||||||
buf[1] = NUL;
|
|
||||||
# endif
|
|
||||||
/* Fake a "c"hange command. When "restart_edit" is set (e.g., because
|
/* Fake a "c"hange command. When "restart_edit" is set (e.g., because
|
||||||
* 'insertmode' is set) fake a "d"elete command, Insert mode will
|
* 'insertmode' is set) fake a "d"elete command, Insert mode will
|
||||||
* restart automatically.
|
* restart automatically.
|
||||||
* Insert the typed character in the typeahead buffer, so that it will
|
* Insert the typed character in the typeahead buffer, so that it will
|
||||||
* be mapped in Insert mode. Required for ":lmap" to work. May cause
|
* be mapped in Insert mode. Required for ":lmap" to work. May cause
|
||||||
* mapping a character from ":vnoremap"... */
|
* mapping a character from ":vnoremap"... */
|
||||||
(void)ins_typebuf(buf, REMAP_YES, 0, !KeyTyped, FALSE);
|
ins_char_typebuf(c);
|
||||||
if (restart_edit != 0)
|
if (restart_edit != 0)
|
||||||
c = 'd';
|
c = 'd';
|
||||||
else
|
else
|
||||||
|
@@ -47,7 +47,6 @@ static void frame_fix_width __ARGS((win_T *wp));
|
|||||||
static int win_alloc_firstwin __ARGS((win_T *oldwin));
|
static int win_alloc_firstwin __ARGS((win_T *oldwin));
|
||||||
#if defined(FEAT_WINDOWS) || defined(PROTO)
|
#if defined(FEAT_WINDOWS) || defined(PROTO)
|
||||||
static tabpage_T *alloc_tabpage __ARGS((void));
|
static tabpage_T *alloc_tabpage __ARGS((void));
|
||||||
static void free_tabpage __ARGS((tabpage_T *tp));
|
|
||||||
static int leave_tabpage __ARGS((buf_T *new_curbuf));
|
static int leave_tabpage __ARGS((buf_T *new_curbuf));
|
||||||
static void enter_tabpage __ARGS((tabpage_T *tp, buf_T *old_curbuf));
|
static void enter_tabpage __ARGS((tabpage_T *tp, buf_T *old_curbuf));
|
||||||
static void frame_fix_height __ARGS((win_T *wp));
|
static void frame_fix_height __ARGS((win_T *wp));
|
||||||
@@ -3184,7 +3183,7 @@ alloc_tabpage()
|
|||||||
return tp;
|
return tp;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
free_tabpage(tp)
|
free_tabpage(tp)
|
||||||
tabpage_T *tp;
|
tabpage_T *tp;
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user