path: root/vim/ftplugin/html.vim
AgeCommit message (Collapse)AuthorFilesLines
2017-11-08Remove null command from b:undo_* variablesTom Ryder1-2/+2
I didn't realise that a null command at the front of .e.g '|cmd|cmd2' printed the current line! Removed that.
2017-11-08Use consistent/thorough ftplugin/indent unloadingTom Ryder1-0/+6
Unload all maps too, with silent! in case they don't exist.
2017-11-04Adjust plugin code layout a lotTom Ryder1-5/+10
Including renaming big_file.vim and accompanying functions yet again, to big_file_options.vim. Trying to keep complex autocmd and mapping definitions on long lines broken up semantically; definition and options on one line, patterns or mapping key on the next, and the command to run on the last. Also trying to make sure that <silent>, <buffer>, and <unique> are applied in the correct places, and that all mapping commands are using the :<C-U> idiom for the command prefix.
2017-11-04Add tidy mapping for HTMLTom Ryder1-0/+4
This mapping mirrors the one for Perl that passes the content of the buffer through a program to tidy it (i.e. not merely check but actively change it). The tidy(1) option chosen here, -quiet, is the bare minimum to make this invocation useful. We would never want the boilerplate it otherwise emits to be in the buffer after a call. Everything else should be applied in a configuration file, which I'll do in a separate feature.
2017-11-04Break long lines in check/lint/tidy mappingsTom Ryder1-2/+4
2017-11-04Make all lint/check/tidy maps local and silentTom Ryder1-2/+2
That is, apply <buffer> and <silent> to each of them, to make them only apply to the current buffer and to prevent them from echoing the command they're running.
2017-11-03Improve comments on check/lint/tidy mapsTom Ryder1-1/+1
2017-11-03Use long form options for tidy(1) Vim callTom Ryder1-2/+2
2017-11-03Use direct :write !cmd instead of shellescape()Tom Ryder1-6/+1
This is a much better method of calling external programs on the buffer's contents, not just because it avoids the mess of :execute evaluation but also because it doesn't require that there actually be a filename for the current buffer. This drastically simplifies the HTML tidy(1) call in particular.
2017-11-03Use full ':execute' not just ':exe' in VimLTom Ryder1-1/+1
We should probably avoid this sort of abbreviation in scripts.
2017-11-03Check for availability of Vim shellescape()Tom Ryder1-4/+6
It doesn't seem to be in very old Vims; worth testing for to avoid errors if I try to use the function.
2017-11-03Revert "Adjust UrlLink() to yank word without t...Tom Ryder1-3/+1
I thought text objects were introduced to Vim a lot later than they actually were; this works fine even in Vim 6, so I'll leave it as it's nicer. This reverts commit ffb5cbc7c681e2fdcb780dbdc51cf3458a937791.
2017-11-03Adjust UrlLink() to yank word without text objectsTom Ryder1-1/+3
2017-11-03Refactor UrlLink() function normal! commandsTom Ryder1-2/+10
Tidy up the 'normal!' commands and comment them in appropriate groups. Take advantage of the natural command-termination at the end of a 'normal!' string to end insert mode. It would be better to do all of this with pure VimL functions, but I don't know how yet.
2017-11-03Use single quotes for HTML link mapping :executeTom Ryder1-2/+2
Saves some backslashing, just like in shell and Perl!
2017-11-03Refactor HTML tidy(1) mappingTom Ryder1-1/+4
Move the logic into a script function. Use single quotes for the strings, too, since we don't need interpolation.
2017-11-03Use <Leader>/<LocalLeader> correctly in Vim configTom Ryder1-2/+2
From ":help <LocalLeader>": > In a global plugin <Leader> should be used and in a filetype plugin > <LocalLeader>. "mapleader" and "maplocalleader" can be equal.
2017-10-30Apply name conventions, scoping to Vim identifiersTom Ryder1-2/+2
The Google VimScript Style Guide says <https://google.github.io/styleguide/vimscriptguide.xml#Naming>: >In general, use plugin-names-like-this, FunctionNamesLikeThis, >CommandNamesLikeThis, augroup_names_like_this, >variable_names_like_this. Adjusted variable, function, and `augroup` names accordingly, including setting script scope for some of the functions and their calls (`s:` and `<SID>` prefixes). Initially I tried using `prefix#`, but it turns out that this is a namespacing contention for publically callable functions like `pathogen#infect`, and none of these functions need to be publically callable.
2017-10-30Merge branch 'vim/vint'Tom Ryder1-4/+4
The Vim configuration, excluding the submodule plugin bundles, now passes a strict run of the vim-vint tool. There's also now a `lint-vim` target in the Makefile.
2017-10-30Move non-indent HTML Vim config indent->ftpluginTom Ryder1-0/+11
This was mistakenly moved along with some indentation settings in 9858af6.
2017-10-30Move filetype-specific indent options into indent/Tom Ryder1-18/+0
I'm still getting used to the structure of the configuration here, and had mistakenly put these indent-related settings into files in the ftplugin directory.
2017-10-30Add some more file-specific indent preferencesTom Ryder1-0/+7
For some languages in which I write often: C, HTML, Perl, PHP, and shell scripts. All of these values presently match the defaults specified in config/indent.vim, but for languages I commonly use it's probably appropriate to have files to set the indent settings explicitly anyway, especially if we switched from a filetype with different values.
2017-10-30Move vim/after/ftplugin files into vim/ftpluginTom Ryder1-0/+11
None of the settings in here need to be run after the core configuration files are loaded, so I'll put them in a slightly more accessible or logical place. This adds a new target `install-vim-ftplugin`, and makes that a prerequisite of the `install-vim` target.