mirror of
https://github.com/vim/vim
synced 2025-07-16 01:01:58 +00:00
runtime(asm): add basic indent support
closes: #14383 Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
556c621659
commit
27f17a6d34
28
runtime/indent/asm.vim
Normal file
28
runtime/indent/asm.vim
Normal file
@ -0,0 +1,28 @@
|
||||
" Vim indent file
|
||||
" Language: asm
|
||||
" Maintainer: Philip Jones <philj56@gmail.com>
|
||||
" Upstream: https://github.com/philj56/vim-asm-indent
|
||||
" Latest Revision: 2017-07-01
|
||||
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=s:getAsmIndent()
|
||||
setlocal indentkeys=<:>,!^F,o,O
|
||||
|
||||
let b:undo_ftplugin .= "indentexpr< indentkeys<"
|
||||
|
||||
function! s:getAsmIndent()
|
||||
let line = getline(v:lnum)
|
||||
let ind = shiftwidth()
|
||||
|
||||
" If the line is a label (starts with ':' terminated keyword),
|
||||
" then don't indent
|
||||
if line =~ '^\s*\k\+:'
|
||||
let ind = 0
|
||||
endif
|
||||
|
||||
return ind
|
||||
endfunction
|
Reference in New Issue
Block a user