Skip to content

Latest commit

 

History

History
76 lines (57 loc) · 2.76 KB

README.org

File metadata and controls

76 lines (57 loc) · 2.76 KB

asm layer

img/asm.png

Table of Contents

Description

This layer adds support for Assembly code. The built-in major mode for editing assembly code in Emacs is asm-mode.

The layer also adds nasm-mode for NASM-specific syntax. Although nasm-mode is intended for NASM, it actually works well with other variants of Assembly in general, and provides Imenu integration so you can jump around with SPC s j.

Features:

  • Improved syntax highlighting.
  • Automatic indentation.
  • Auto-completion for symbol in opened buffers.
  • Look up documentation for current instruction at cursor.
  • Imenu integration.

Install

Layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add asm to the existing dotspacemacs-configuration-layers list in this file.

PDFs

To look up the x86 instructions, two things are required:

  • the pdftotext command line tool from Poppler:
sudo apt-get install poppler-utils

Then, set x86-lookup-pdf to the location of your PDF document (Tip: If you use Helm as your completion of choice, you can use SPC f f to navigate to the file, and press C-c i to insert the path). For example, something like this:

(setq x86-lookup-pdf "~/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf")

The first time you launch the command, it can take a while for indexing, this is a one time operation and the result is cached for later use.

Key bindings

Key BindingDescription
SPC m h hLook up the documentation for instruction at point
;Insert a comment

Note: Quoted from the docstring of asm-comment, the command bound to ;:

Convert an empty comment to a `larger' kind, or start a new one.
These are the known comment classes:

   1 -- comment to the right of the code (at the comment-column)
   2 -- comment on its own line, indented like code
   3 -- comment on its own line, beginning at the left-most column.

Suggested usage:  while writing your code, trigger asm-comment
repeatedly until you are satisfied with the kind of comment.