diff options
author | Bram Moolenaar <bram@vim.org> | 2010-07-21 22:05:20 +0200 |
---|---|---|
committer | Bram Moolenaar <bram@vim.org> | 2010-07-21 22:05:20 +0200 |
commit | e7f5ef093e73aae29ec60e844ec886cbfb55d587 (patch) | |
tree | e0a8befdaef0fbd3c367d882c4f093589b7ed999 /runtime | |
parent | 58a518aec81dd4ac1f1af9dea55f055386aca264 (diff) | |
download | vim-e7f5ef093e73aae29ec60e844ec886cbfb55d587.tar.gz |
Make it possible to load Perl dynamically on Unix. (James Vega)
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/if_perl.txt | 15 | ||||
-rw-r--r-- | runtime/doc/syntax.txt | 6 | ||||
-rw-r--r-- | runtime/doc/todo.txt | 5 | ||||
-rw-r--r-- | runtime/ftplugin/debchangelog.vim | 6 | ||||
-rw-r--r-- | runtime/syntax/fortran.vim | 78 |
5 files changed, 83 insertions, 27 deletions
diff --git a/runtime/doc/if_perl.txt b/runtime/doc/if_perl.txt index 842393a7..50f2712f 100644 --- a/runtime/doc/if_perl.txt +++ b/runtime/doc/if_perl.txt @@ -1,4 +1,4 @@ -*if_perl.txt* For Vim version 7.3b. Last change: 2010 Jul 20 +*if_perl.txt* For Vim version 7.3b. Last change: 2010 Jul 21 VIM REFERENCE MANUAL by Sven Verdoolaege @@ -265,12 +265,15 @@ Note that "EOF" must be at the start of the line. ============================================================================== 4. Dynamic loading *perl-dynamic* -On MS-Windows the Perl library can be loaded dynamically. The |:version| -output then includes |+perl/dyn|. +On MS-Windows and Unix the Perl library can be loaded dynamically. The +|:version| output then includes |+perl/dyn|. -This means that Vim will search for the Perl DLL file only when needed. When -you don't use the Perl interface you don't need it, thus you can use Vim -without this DLL file. +This means that Vim will search for the Perl DLL or shared library file only +when needed. When you don't use the Perl interface you don't need it, thus +you can use Vim without this file. + + +MS-Windows ~ You can download Perl from http://www.perl.org. The one from ActiveState was used for building Vim. diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index bdd3c4f9..9c9caefc 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.3b. Last change: 2010 Jul 20 +*syntax.txt* For Vim version 7.3b. Last change: 2010 Jul 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1083,7 +1083,9 @@ FORTRAN *fortran.vim* *ft-fortran-syntax* Default highlighting and dialect ~ Highlighting appropriate for f95 (Fortran 95) is used by default. This choice should be appropriate for most users most of the time because Fortran 95 is a -superset of Fortran 90 and almost a superset of Fortran 77. +superset of Fortran 90 and almost a superset of Fortran 77. Preliminary +support for Fortran 2003 and Fortran 2008 features has been introduced and is +automatically available in the default (f95) highlighting. Fortran source code form ~ Fortran 9x code can be in either fixed or free source form. Note that the diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 0b736ba0..906d6ed9 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.3b. Last change: 2010 Jul 20 +*todo.txt* For Vim version 7.3b. Last change: 2010 Jul 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -31,6 +31,7 @@ be worked on, but only if you sponsor Vim development. See |sponsor|. -------------------- Known bugs and current work ----------------------- Include patch for horizontal scoll wheel? (Bjorn Winckler, 2010 Jul 20) +Asked for a few changes. Patch for Dynamic loading for Perl. (James Vega, 2010 Jul 20) @@ -1124,8 +1125,6 @@ More patches: Sep 13) - Patch for adding "space" item in 'listchars'. (Jérémie Roquet, 2009 Oct 29, Docs patch Oct 30) -- Patch for supporting #rrggbb in color terminals. (Matt Wozniski) - Where is a recent version of this patch? Or use CSApprox plugin? - Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520 by Vissale Neang. (Martin Stubenschrott) Asked Vissale to make the scripts more friendly for the Vim distribution. diff --git a/runtime/ftplugin/debchangelog.vim b/runtime/ftplugin/debchangelog.vim index cd21e93d..80ff8efe 100644 --- a/runtime/ftplugin/debchangelog.vim +++ b/runtime/ftplugin/debchangelog.vim @@ -3,9 +3,9 @@ " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> " Former Maintainers: Michael Piefel <piefel@informatik.hu-berlin.de> " Stefano Zacchiroli <zack@debian.org> -" Last Change: 2010-04-29 +" Last Change: 2010-07-11 " License: GNU GPL, version 2.0 or later -" URL: http://hg.debian.org/hg/pkg-vim/vim/raw-file/tip/runtime/ftplugin/debchangelog.vim +" URL: http://hg.debian.org/hg/pkg-vim/vim/file/unstable/runtime/ftplugin/debchangelog.vim " Bug completion requires apt-listbugs installed for Debian packages or " python-launchpadlib installed for Ubuntu packages @@ -228,7 +228,7 @@ endfunction augroup changelogMenu au BufEnter * if &filetype == "debchangelog" | call <SID>MakeMenu() | endif -au BufLeave * if &filetype == "debchangelog" | aunmenu Changelog | endif +au BufLeave * if &filetype == "debchangelog" | silent! aunmenu Changelog | endif augroup END " }}} diff --git a/runtime/syntax/fortran.vim b/runtime/syntax/fortran.vim index 3d323fbb..bcc77c5a 100644 --- a/runtime/syntax/fortran.vim +++ b/runtime/syntax/fortran.vim @@ -1,16 +1,16 @@ " Vim syntax file " Language: Fortran95 (and Fortran90, Fortran77, F and elf90) -" Version: 0.88 +" Version: 0.89 " URL: http://www.unb.ca/chem/ajit/syntax/fortran.vim -" Last Change: 2008 Nov 01 +" Last Change: 2010 July 21 " Maintainer: Ajit J. Thakkar (ajit AT unb.ca); <http://www.unb.ca/chem/ajit/> -" Usage: Do :help fortran-syntax from Vim +" Usage: For instructions, do :help fortran-syntax from Vim " Credits: " Version 0.1 was based on the fortran 77 syntax file by Mario Eusebio and " Preben Guldberg. Useful suggestions were made by: Andrej Panjkov, " Bram Moolenaar, Thomas Olsen, Michael Sternberg, Christian Reile, " Walter Dieudonné, Alexander Wagner, Roman Bertle, Charles Rendleman, -" and Andrew Griffiths. For instructions on use, do :help fortran from vim +" Andrew Griffiths, Joe Krahn, and Hendrik Merx. " For version 5.x: Clear all syntax items " For version 6.x: Quit if a syntax file is already loaded @@ -74,7 +74,7 @@ if !exists("b:fortran_fixed_source") " Detection becomes more accurate and time-consuming if more lines " are checked. Increase the limit below if you keep lots of comments at " the very top of each file and you have a fast computer. - let b:lmax = 250 + let b:lmax = 500 if ( b:lmax > line("$") ) let b:lmax = line("$") endif @@ -82,7 +82,7 @@ if !exists("b:fortran_fixed_source") let b:ln=1 while b:ln <= b:lmax let b:test = strpart(getline(b:ln),0,5) - if b:test[0] !~ '[Cc*!#]' && b:test !~ '^ \+[!#]' && b:test =~ '[^ 0-9\t]' + if b:test !~ '^[Cc*]' && b:test !~ '^ *[!#]' && b:test =~ '[^ 0-9\t]' && b:test !~ '^[ 0-9]*\t' let b:fortran_fixed_source = 0 break endif @@ -207,7 +207,8 @@ endif syn keyword fortranTypeEx external syn keyword fortranIOEx format -syn keyword fortranKeywordEx continue +syn match fortranKeywordEx "\<continue\>" +syn match fortranKeyword "^\s*\d\+\s\+continue\>" syn match fortranKeywordEx "\<go\s*to\>" syn region fortranStringEx start=+'+ end=+'+ contains=fortranContinueMark,fortranLeftMargin,fortranSerialNumber syn keyword fortran77IntrinsicEx dim lge lgt lle llt mod @@ -290,6 +291,40 @@ if b:fortran_dialect == "f95" || b:fortran_dialect == "F" endif endif +if b:fortran_dialect == "f95" + " F2003 + syn keyword fortran03Intrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of + " ISO_C_binding + syn keyword fortran03Constant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab + syn keyword fortran03Constant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr + syn keyword fortran03Intrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer + syn keyword fortran03Type c_ptr c_funptr + " ISO_Fortran_env + syn keyword fortran03Constant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit + " IEEE_arithmetic + syn keyword fortran03Intrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode + + syn keyword fortran03ReadWrite flush wait + syn keyword fortran03IO decimal round iomsg + syn keyword fortran03Type asynchronous nopass non_overridable pass protected volatile abstract extends import + syn keyword fortran03Type non_intrinsic value bind deferred generic final enumerator class + syn match fortran03Type "\<associate\>" + syn match fortran03Type "\<end\s*associate" + syn match fortran03Type "\<enum\s*,\s*bind\s*(\s*c\s*)" + syn match fortran03Type "\<end\s*enum" + syn match fortran03Conditional "\<select\s*type" + syn match fortran03Conditional "\<type\s*is\>" + syn match fortran03UnitHeader "\<abstract\s*interface\>" + syn match fortran03Operator "\([\|]\)" + + " F2008 + syn keyword fortran08Intrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 + syn keyword fortran08Intrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits + syn keyword fortran08Intrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image + syn keyword fortran08IO newunit + syn keyword fortran08Type contiguous +endif + syn cluster fortranCommentGroup contains=fortranTodo if (b:fortran_fixed_source == 1) @@ -324,9 +359,9 @@ syn match cInclude "^\s*#\s*include\>\s*["<]" contains=cIncluded if exists("fortran_fold") || exists("fortran_more_precise") syn sync fromstart elseif (b:fortran_fixed_source == 0) - syn sync linecont "&" minlines=20 + syn sync linecont "&" minlines=30 else - syn sync minlines=20 + syn sync minlines=30 endif if version >= 600 && exists("fortran_fold") @@ -336,15 +371,17 @@ if version >= 600 && exists("fortran_fold") syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(module\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule - syn region fortranBlockData transparent fold keepend start="\<block\s*data\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock + syn region fortranBlockData transparent fold keepend start="\<block\s*data\(\s\+\z(\a\w*\)\)\=" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock syn region fortranInterface transparent fold keepend extend start="^\s*interface\>" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock + syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\)\)\=\s*::" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock else syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(module\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule - syn region fortranBlockData transparent fold keepend start="\<block\s*data\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock + syn region fortranBlockData transparent fold keepend start="\<block\s*data\(\s\+\z(\a\w*\)\)\=" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock syn region fortranInterface transparent fold keepend extend start="^\s*interface\>" skip="^\s*[!#].*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock + syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\)\)\=\s*::" skip="^\s*[!#].*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock endif if exists("fortran_fold_conditionals") @@ -390,26 +427,41 @@ if version >= 508 || !exists("did_fortran_syn_inits") " fortranMultiCommentLines HiLink fortranKeyword Keyword HiLink fortranConstructName Identifier + HiLink fortran03Conditional fortranConditional HiLink fortranConditional Conditional HiLink fortranRepeat Repeat HiLink fortranTodo Todo - HiLink fortranContinueMark Todo + if (b:fortran_fixed_source == 1) + HiLink fortranContinueMark Todo + else + HiLink fortranContinueMark Keyword + endif HiLink fortranString String HiLink fortranNumber Number + HiLink fortran03Operator fortranOperator HiLink fortranOperator Operator HiLink fortranBoolean Boolean HiLink fortranLabelError Error HiLink fortranObsolete Todo + HiLink fortran03Type fortranType + HiLink fortran08Type fortranType HiLink fortranType Type HiLink fortranStructure Type HiLink fortranStorageClass StorageClass - HiLink fortranCall fortranUnitHeader + HiLink fortranCall Function + HiLink fortran03UnitHeader fortranUnitHeader HiLink fortranUnitHeader fortranPreCondit + HiLink fortran03ReadWrite fortranReadWrite HiLink fortranReadWrite Keyword + HiLink fortran03IO fortranIO + HiLink fortran08IO fortranIO HiLink fortranIO Keyword HiLink fortran95Intrinsic fortran90Intrinsic HiLink fortran77Intrinsic fortran90Intrinsic HiLink fortran90Intrinsic Function + HiLink fortran03Intrinsic Function + HiLink fortran08Intrinsic Function + HiLink fortran03Constant Function if ( b:fortran_dialect == "elf" || b:fortran_dialect == "F" ) HiLink fortranKeywordOb fortranObsolete |