" Vim settings file " Language: Fortran 2008 (and older: Fortran 2003, 95, 90, 77, 66) " Version: 0.48 " Last Change: 2012 Apr. 18 " Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/> " Usage: Do :help fortran-plugin from Vim " Credits: " Useful suggestions were made by Stefano Zacchiroli, Hendrik Merx, and Ben " Fritz. " Only do these settings when not done yet for this buffer if exists("b:did_ftplugin") finish endif let s:cposet=&cpoptions set cpoptions&vim " Don't do other file type settings for this buffer let b:did_ftplugin = 1 " Determine whether this is a fixed or free format source file " if this hasn't been done yet if !exists("b:fortran_fixed_source") if exists("fortran_free_source") " User guarantees free source form let b:fortran_fixed_source = 0 elseif exists("fortran_fixed_source") " User guarantees fixed source form let b:fortran_fixed_source = 1 else " Modern Fortran allows both fixed and free source form " assume fixed source form unless signs of free source form " are detected in the first five columns of the first s:lmax lines " 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 s:lmax = 500 if ( s:lmax > line("$") ) let s:lmax = line("$") endif let b:fortran_fixed_source = 1 let s:ln=1 while s:ln <= s:lmax let s:test = strpart(getline(s:ln),0,5) if s:test !~ '^[Cc*]' && s:test !~ '^ *[!#]' && s:test =~ '[^ 0-9\t]' && s:test !~ '^[ 0-9]*\t' let b:fortran_fixed_source = 0 break endif let s:ln = s:ln + 1 endwhile unlet! s:lmax s:ln s:test endif endif " Set comments and textwidth according to source type if (b:fortran_fixed_source == 1) setlocal comments=:!,:*,:C " Fixed format requires a textwidth of 72 for code setlocal tw=72 " If you need to add "&" on continued lines so that the code is " compatible with both free and fixed format, then you should do so " in column 73 and uncomment the next line " setlocal tw=73 else setlocal comments=:! " Free format allows a textwidth of 132 for code but 80 is more usual setlocal tw=80 endif " Set commentstring for foldmethod=marker setlocal cms=!%s " Tabs are not a good idea in Fortran so the default is to expand tabs if !exists("fortran_have_tabs") setlocal expandtab endif " Set 'formatoptions' to break comment and text lines but allow long lines setlocal fo+=tcql setlocal include=^\\c#\\=\\s*include\\s\\+ setlocal suffixesadd+=.f08,.f03,.f95,.f90,.for,.f,.F,.f77,.ftn,.fpp " Define patterns for the matchit plugin if !exists("b:match_words") let s:notend = '\%(\<end\s\+\)\@<!' let s:notselect = '\%(\<select\s\+\)\@<!' let s:notelse = '\%(\<end\s\+\|\<else\s\+\)\@<!' let s:notprocedure = '\%(\s\+procedure\>\)\@!' let b:match_ignorecase = 1 let b:match_words = \ '(:),' . \ '\<select\s*case\>:' . s:notselect. '\<case\>:\<end\s*select\>,' . \ s:notelse . '\<if\s*(.\+)\s*then\>:' . \ '\<else\s*\%(if\s*(.\+)\s*then\)\=\>:\<end\s*if\>,'. \ 'do\s\+\(\d\+\):\%(^\s*\)\@<=\1\s,'. \ s:notend . '\<do\>:\<end\s*do\>,'. \ s:notelse . '\<where\>:\<elsewhere\>:\<end\s*where\>,'. \ s:notend . '\<type\s*[^(]:\<end\s*type\>,'. \ s:notend . '\<forall\>:\<end\s*forall\>,'. \ s:notend . '\<associate\>:\<end\s*associate\>,'. \ s:notend . '\<enum\>:\<end\s*enum\>,'. \ s:notend . '\<interface\>:\<end\s*interface\>,'. \ s:notend . '\<subroutine\>:\<end\s*subroutine\>,'. \ s:notend . '\<function\>:\<end\s*function\>,'. \ s:notend . '\<module\>' . s:notprocedure . ':\<end\s*module\>,'. \ s:notend . '\<program\>:\<end\s*program\>' endif " File filters for :browse e if has("gui_win32") && !exists("b:browsefilter") let b:browsefilter = "Fortran Files (*.f;*.for;*.f77;*.f90;*.f95;*.f03;*.f08;*.fpp;*.ftn)\t*.f;*.for;*.f77;*.f90;*.f95;*.f03;*.f08;*.fpp;*.ftn\n" . \ "All Files (*.*)\t*.*\n" endif let b:undo_ftplugin = "setl fo< com< tw< cms< et< inc<" \ . "| unlet! b:match_ignorecase b:match_words b:browsefilter" let &cpoptions=s:cposet unlet s:cposet " vim:sw=2
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
README.txt | File | 869 B | 0644 |
|
a2ps.vim | File | 458 B | 0644 |
|
aap.vim | File | 716 B | 0644 |
|
abap.vim | File | 800 B | 0644 |
|
abaqus.vim | File | 3.31 KB | 0644 |
|
ada.vim | File | 6.26 KB | 0644 |
|
alsaconf.vim | File | 426 B | 0644 |
|
ant.vim | File | 1.31 KB | 0644 |
|
arch.vim | File | 419 B | 0644 |
|
art.vim | File | 410 B | 0644 |
|
aspvbs.vim | File | 1.87 KB | 0644 |
|
automake.vim | File | 325 B | 0644 |
|
bdf.vim | File | 437 B | 0644 |
|
bst.vim | File | 333 B | 0644 |
|
btm.vim | File | 316 B | 0644 |
|
c.vim | File | 1.92 KB | 0644 |
|
calendar.vim | File | 450 B | 0644 |
|
cdrdaoconf.vim | File | 375 B | 0644 |
|
ch.vim | File | 472 B | 0644 |
|
changelog.vim | File | 8.54 KB | 0644 |
|
clojure.vim | File | 2.78 KB | 0644 |
|
cobol.vim | File | 9.17 KB | 0644 |
|
conf.vim | File | 422 B | 0644 |
|
config.vim | File | 1.24 KB | 0644 |
|
context.vim | File | 955 B | 0644 |
|
cpp.vim | File | 288 B | 0644 |
|
crm.vim | File | 402 B | 0644 |
|
cs.vim | File | 802 B | 0644 |
|
csc.vim | File | 734 B | 0644 |
|
csh.vim | File | 1.59 KB | 0644 |
|
css.vim | File | 516 B | 0644 |
|
cucumber.vim | File | 5.2 KB | 0644 |
|
cvsrc.vim | File | 387 B | 0644 |
|
debchangelog.vim | File | 11.26 KB | 0644 |
|
debcontrol.vim | File | 1.84 KB | 0644 |
|
denyhosts.vim | File | 375 B | 0644 |
|
dictconf.vim | File | 422 B | 0644 |
|
dictdconf.vim | File | 423 B | 0644 |
|
diff.vim | File | 355 B | 0644 |
|
dircolors.vim | File | 419 B | 0644 |
|
docbk.vim | File | 530 B | 0644 |
|
dosbatch.vim | File | 777 B | 0644 |
|
dosini.vim | File | 446 B | 0644 |
|
dtd.vim | File | 1.1 KB | 0644 |
|
dtrace.vim | File | 1.12 KB | 0644 |
|
elinks.vim | File | 424 B | 0644 |
|
erlang.vim | File | 1.77 KB | 0644 |
|
eruby.vim | File | 3.08 KB | 0644 |
|
eterm.vim | File | 458 B | 0644 |
|
falcon.vim | File | 1.31 KB | 0644 |
|
fetchmail.vim | File | 416 B | 0644 |
|
flexwiki.vim | File | 1.83 KB | 0644 |
|
fortran.vim | File | 4.16 KB | 0644 |
|
framescript.vim | File | 768 B | 0644 |
|
fvwm.vim | File | 390 B | 0644 |
|
git.vim | File | 1.19 KB | 0644 |
|
gitcommit.vim | File | 2.16 KB | 0644 |
|
gitconfig.vim | File | 376 B | 0644 |
|
gitrebase.vim | File | 1.4 KB | 0644 |
|
gitsendemail.vim | File | 157 B | 0644 |
|
gpg.vim | File | 421 B | 0644 |
|
gprof.vim | File | 939 B | 0644 |
|
group.vim | File | 413 B | 0644 |
|
grub.vim | File | 422 B | 0644 |
|
haml.vim | File | 1.84 KB | 0644 |
|
hamster.vim | File | 1.88 KB | 0644 |
|
haskell.vim | File | 433 B | 0644 |
|
help.vim | File | 430 B | 0644 |
|
hostconf.vim | File | 375 B | 0644 |
|
hostsaccess.vim | File | 424 B | 0644 |
|
html.vim | File | 2.87 KB | 0644 |
|
htmldjango.vim | File | 331 B | 0644 |
|
indent.vim | File | 442 B | 0644 |
|
initex.vim | File | 1005 B | 0644 |
|
ishd.vim | File | 1.23 KB | 0644 |
|
java.vim | File | 1.65 KB | 0644 |
|
javascript.vim | File | 1.02 KB | 0644 |
|
jsp.vim | File | 1.96 KB | 0644 |
|
kconfig.vim | File | 375 B | 0644 |
|
kwt.vim | File | 851 B | 0644 |
|
ld.vim | File | 458 B | 0644 |
|
lftp.vim | File | 422 B | 0644 |
|
libao.vim | File | 428 B | 0644 |
|
limits.vim | File | 424 B | 0644 |
|
liquid.vim | File | 1.85 KB | 0644 |
|
lisp.vim | File | 911 B | 0644 |
|
logcheck.vim | File | 500 B | 0644 |
|
loginaccess.vim | File | 430 B | 0644 |
|
logindefs.vim | File | 428 B | 0644 |
|
logtalk.dict | File | 1.75 KB | 0644 |
|
logtalk.vim | File | 401 B | 0644 |
|
lprolog.vim | File | 1.25 KB | 0644 |
|
lua.vim | File | 973 B | 0644 |
|
m4.vim | File | 414 B | 0644 |
|
mail.vim | File | 1.08 KB | 0644 |
|
mailaliases.vim | File | 375 B | 0644 |
|
mailcap.vim | File | 422 B | 0644 |
|
make.vim | File | 935 B | 0644 |
|
man.vim | File | 4.6 KB | 0644 |
|
manconf.vim | File | 432 B | 0644 |
|
markdown.vim | File | 572 B | 0644 |
|
matlab.vim | File | 649 B | 0644 |
|
mf.vim | File | 404 B | 0644 |
|
modconf.vim | File | 465 B | 0644 |
|
mp.vim | File | 621 B | 0644 |
|
mplayerconf.vim | File | 460 B | 0644 |
|
mrxvtrc.vim | File | 798 B | 0644 |
|
msmessages.vim | File | 1.11 KB | 0644 |
|
muttrc.vim | File | 455 B | 0644 |
|
nanorc.vim | File | 435 B | 0644 |
|
netrc.vim | File | 416 B | 0644 |
|
nsis.vim | File | 553 B | 0644 |
|
objc.vim | File | 296 B | 0644 |
|
ocaml.vim | File | 22.5 KB | 0644 |
|
occam.vim | File | 1.27 KB | 0644 |
|
pamconf.vim | File | 421 B | 0644 |
|
pascal.vim | File | 667 B | 0644 |
|
passwd.vim | File | 412 B | 0644 |
|
pdf.vim | File | 2.55 KB | 0644 |
|
perl.vim | File | 2.77 KB | 0644 |
|
perl6.vim | File | 2.47 KB | 0644 |
|
php.vim | File | 2.75 KB | 0644 |
|
pinfo.vim | File | 423 B | 0644 |
|
plaintex.vim | File | 1.12 KB | 0644 |
|
postscr.vim | File | 1006 B | 0644 |
|
procmail.vim | File | 467 B | 0644 |
|
prolog.vim | File | 428 B | 0644 |
|
protocols.vim | File | 445 B | 0644 |
|
pyrex.vim | File | 766 B | 0644 |
|
python.vim | File | 1.33 KB | 0644 |
|
qf.vim | File | 459 B | 0644 |
|
quake.vim | File | 427 B | 0644 |
|
racc.vim | File | 437 B | 0644 |
|
readline.vim | File | 426 B | 0644 |
|
reva.vim | File | 709 B | 0644 |
|
rnc.vim | File | 419 B | 0644 |
|
rpl.vim | File | 620 B | 0644 |
|
rst.vim | File | 444 B | 0644 |
|
ruby.vim | File | 15.48 KB | 0644 |
|
sass.vim | File | 580 B | 0644 |
|
scheme.vim | File | 1.71 KB | 0644 |
|
screen.vim | File | 424 B | 0644 |
|
scss.vim | File | 200 B | 0644 |
|
sensors.vim | File | 443 B | 0644 |
|
services.vim | File | 440 B | 0644 |
|
setserial.vim | File | 427 B | 0644 |
|
sgml.vim | File | 1.18 KB | 0644 |
|
sh.vim | File | 1.17 KB | 0644 |
|
sieve.vim | File | 457 B | 0644 |
|
slpconf.vim | File | 465 B | 0644 |
|
slpreg.vim | File | 464 B | 0644 |
|
slpspi.vim | File | 455 B | 0644 |
|
spec.vim | File | 5.21 KB | 0644 |
|
sql.vim | File | 20.08 KB | 0644 |
|
sshconfig.vim | File | 429 B | 0644 |
|
sudoers.vim | File | 426 B | 0644 |
|
svg.vim | File | 1.17 KB | 0644 |
|
sysctl.vim | File | 441 B | 0644 |
|
tcl.vim | File | 1002 B | 0644 |
|
tcsh.vim | File | 1.18 KB | 0644 |
|
terminfo.vim | File | 418 B | 0644 |
|
tex.vim | File | 1.6 KB | 0644 |
|
treetop.vim | File | 404 B | 0644 |
|
tt2html.vim | File | 434 B | 0644 |
|
udevconf.vim | File | 422 B | 0644 |
|
udevperm.vim | File | 420 B | 0644 |
|
udevrules.vim | File | 414 B | 0644 |
|
updatedb.vim | File | 431 B | 0644 |
|
vb.vim | File | 1.86 KB | 0644 |
|
verilog.vim | File | 1.64 KB | 0644 |
|
vhdl.vim | File | 3.42 KB | 0644 |
|
vim.vim | File | 2.88 KB | 0644 |
|
xdefaults.vim | File | 469 B | 0644 |
|
xf86conf.vim | File | 422 B | 0644 |
|
xhtml.vim | File | 1.99 KB | 0644 |
|
xinetd.vim | File | 464 B | 0644 |
|
xml.vim | File | 1.87 KB | 0644 |
|
xmodmap.vim | File | 422 B | 0644 |
|
xs.vim | File | 465 B | 0644 |
|
xsd.vim | File | 1.14 KB | 0644 |
|
xslt.vim | File | 539 B | 0644 |
|
yaml.vim | File | 452 B | 0644 |
|
zimbu.vim | File | 5.2 KB | 0644 |
|
zsh.vim | File | 674 B | 0644 |
|