Universal-Assembly-Syntax-H.../README.md

122 lines
6.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Обзор 🛠️
Это расширение для Visual Studio Code обеспечивает полноценную подсветку синтаксиса для ассемблера x86, x64 и ARM с использованием синтаксиса Intel. Оно создано для улучшения читаемости и понимания ассемблерного кода, включая вывод компиляторов.
## Возможности ✨
- Подсветка синтаксиса инструкций ассемблера x86, x64 и ARM 💻
- Поддержка синтаксиса Intel 🧠
- Подсветка регистров, операндов памяти и числовых констант 🔍
- Распознавание стандартных директив ассемблера ⚙️
- Правильная подсветка меток и имён функций 🏷️
- Поддержка возможностей ассемблерного вывода компиляторов (например, CFI директивы) 🛡️
- **Поддержка языка КВС** — ассемблера с русским синтаксисом для x86-64 🇷🇺
## Установка 🚀
### Способ 1: Установка из маркета расширений
1. Откройте Visual Studio Code
2. Перейдите в раздел расширений (Ctrl+Shift+X или Cmd+Shift+X на macOS)
3. Найдите "Universal Assembly Syntax Highlighting"
4. Нажмите Установить
### Способ 2: Ручная установка
1. Склонируйте или скачайте репозиторий расширения
2. Откройте командную палитру (Ctrl+Shift+P)
3. Выполните команду `Developer: Open Extensions Folder`
4. Скопируйте папку с расширением в открывшуюся директорию
5. Перезапустите VS Code
## Использование 💡
После установки расширение будет автоматически подсвечивать синтаксис файлов со следующими расширениями:
- `.asm`
- `.s`
- `.S`
- `.nasm`
- `.asmx`
- `.inc`
- `.квс` — файлы ассемблера КВС
Если вы работаете с файлом, имеющим другое расширение, но содержащим код ассемблера x86/x64, вы можете вручную установить режим языка:
1. Нажмите на индикатор языка в правом нижнем углу VS Code
2. Выберите "x86/x64 Assembly" из списка языков
## Подсвечиваемые элементы 🎨
Это расширение обеспечивает подсветку синтаксиса для:
- Инструкций (например, `mov`, `push`, `call`) 📝
- Регистров (например, `eax`, `rbp`, `r15`) 📟
- Операндов памяти (например, `DWORD PTR`, `QWORD PTR`) 📋
- Числовых констант (десятичных и шестнадцатеричных) 🔢
- Меток и имён функций 🏷️
- Директив ассемблера (например, `.section`, `.globl`) 🧭
- CFI директив (например, `.cfi_startproc`, `.cfi_endproc`) 🛡️
- Комментариев (строки, начинающиеся с `;`) 💬
- **Русских инструкций КВС** (например, `переместить_имм`, `вызов_системы`) 🇷🇺
- **Русских регистров КВС** (например, `раикс`, `рдиай`, `ал`) 🇷🇺
- **Русских секций КВС** (`.текст`, `.данные`, `.бнд`) 🇷🇺
- **Русских директив КВС** (`.глобал`, `.строка`, `.байт`) 🇷🇺
## Настройка 🎨
### Цвета подсветки синтаксиса
Вы можете настроить цвета подсветки синтаксиса, изменив цветовую тему VS Code. Добавьте или измените записи в вашем файле `settings.json` в разделе `"editor.tokenColorCustomizations"`.
Например:
```json
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "keyword.control.instruction.x86asm",
"settings": {
"foreground": "#C678DD"
}
},
{
"scope": "variable.language.register.x86asm",
"settings": {
"foreground": "#E06C75"
}
}
]
}
```
### Символы комментариев
Вы можете настроить символы для комментариев в соответствии с вашим ассемблером. Добавьте эти настройки в ваш `settings.json`:
```json
{
"assembly.comments.lineComment": "#",
"assembly.comments.blockComment": ["/*", "*/"]
}
```
**Распространённые конфигурации:**
- **GNU Assembler (as)**: Используйте `#` для однострочных комментариев
- **NASM/MASM**: Используйте `;` для однострочных комментариев (по умолчанию)
- **Ассемблер КВС**: Используйте `;` для однострочных комментариев
Расширение автоматически обновит поведение комментариев при изменении этих настроек.
## Вклад в проект 🤝
Если вы нашли ошибки или у вас есть предложения по улучшению, пожалуйста, создайте обращение или отправьте запрос на включение изменений в GitHub репозитории.
## Лицензия 📄
Это расширение распространяется под лицензией MIT. Подробности см. в файле LICENSE.
## Благодарности 🙌
Спасибо всем участникам и пользователям, которые предоставили отзывы и предложения по улучшению этого расширения.