Ⅰ. 插件描述
Vim syntax highlighting for the ca65 assemblerⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'maxbane/vim-asm-ca65'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'maxbane/vim-asm-ca65'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'maxbane/vim-asm-ca65'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/maxbane/vim-asm_ca65
Ⅳ. 文档说明
# vim-asm_ca65
Vim plugin for the ca65 assembly language.
Purpose
This repository provides a Vim
syntax-highlighting plugin, auto-indent plugin, and filetype plugin for theca65 assembly language.
ca65 is a full-featured assembler for the [MOS
6502](https://en.wikipedia.org/wiki/MOS_Technology_6502) family of
microprocessors, which powered such historic platforms as the KIM I, Apple II,
Commodore 64, and Nintendo Entertainment System. It is a part of the popularcc65 suite of development tools for the 6502,
which also includes a C compiler, linker, object dumper, etc. ca65 is
designed both for direct use by assembly programmers and as the compilation
target of the cc65 C compiler. ca65 is especially used by "homebrew"
communities for the NES, SNES, etc.
The stock Vim runtime distribution includes syntax modules for several dialects
of assembly, as well as a "generic" module (which is really for the GNU
Assembler), none of which works particularly well with 6502 assembly
conventions, and especially not with ca65's many added features.
Features
Syntax highlighting
- Highlights 6502 instruction mnemonics as keywords, with special highlighting
for "illegal" instructions, and error highlighting for unknown (typo)
instructions.
- Highlights all valid
ca65numeric and string literals, label
definitions, and comments, with special highlighting for TODOs, FIXMEs, etc. - Highlights all valid expression operators and control comands, with special
treatment for various classes of commands, including.fileopt, segment
names, includes, macro definitions, storage types, conditional assembly,
linker control commands, structs, unions, procedures, pseudo-functions, some
built-in macros, console output commands (.out,.warn, .etc.), and
assembler behavior switches.- Highlights 6502 instruction mnemonics as keywords, with special highlighting
Auto-indent
- Auto-indent under labels,
.procs,.ifstatements, macro definitions,
macro call parameters, scopes, unions, and structs. Automatically
de-dent when closing these structures.
- Auto-indent under labels,
Filetype plugin
- Defines
ca65comment syntax for Vim's automatic comment formatting features. - Recognizes
.include,.incbin, and.macpackstatements for Vim's
include-aware features.
- Defines
Examples (screenshots)
Solarized colorscheme


Elflord colorscheme


Limitations
asm_ca65.vimcurrently has no awareness of, or support for, assembler
options that change the rules of valid labels, identifiers, and literals from
their defaults, for example the following .feature options and related
command-line switches to ca65.
.feature at_in_identifiers.feature dollar_in_identifiers.feature labels_without_colons.feature underline_in_numbers
Installation and Usage
Install in the normal way (i.e., place the contents of the syntax/, indent/
and ftplugin/ directories in corresonding locations in your vim runtime
path), or, if you use Pathogen, clone
this repository under ~/.vim/bundle/.
Everything is enabled by setting a buffer's filetype to asm_ca65. For
example, if all of your ca65 assembly source files end with the .s and.inc., suffixes, the follwing suffices in your .vimrc:
filetype plugin indent on
augroup filetypedetect
au BufNewFile,BufRead *.s,*.inc set ft=asm_ca65
augroup END