monodevelop-settings/README.md

64 lines
4.3 KiB
Markdown
Raw Permalink 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.

# monodevelop-settings
У этого проекта две основные цели. Во-первых, упрощение внедрения стиля кодирования. Во-вторых, сохранение и распространение лучших практик использования MonoDevelop.
## Что внутри?
* Настройки для автоматического форматирования кода.
* Настройки именования.
* Настройки хоткеев.
* Code templates(ctor) адаптированные под наш стиль кодирования.
## Как установить настройки?
Настройки устанавливаются простым клонированием репозитория в нужную папку.
```bash
mkdir ~/Library/MonoDevelop-3.0-orig/
cp -R ~/Library/MonoDevelop-3.0/ ~/Library/MonoDevelop-3.0-orig/
rm -rf ~/Library/MonoDevelop-3.0/
git clone https://github.com/gaech/monodevelop-settings.git ~/Library/MonoDevelop-3.0/
```
### Пользователям Windows
Пользователи Windows клонируют репозиторий в любое удобное место на компьютере, и далее ручками копируют папки Policies и Snippets в папку
```
C:\Users\%USERNAME%\AppData\Roaming\MonoDevelop-X.X
```
Копировать папку KeyBindings, равно как и делать репозиторий напрямую в папке настроек монодевелопа, не рекомендуется. У макоси нет клавиши Control, а у винды нет клавиши Meta, так что их хоткеи несовместимы.
После успешного клонирования надо изменить глобальные настройки MonoDevelop. `MonoDevelop → Preferences...`
В разделе `Source code → .NET Naming Policies` выставляем `Policy: Touchin`
![](https://github.com/gaech/monodevelop-settings/raw/014f6c45b1b40f69aeba8641a3cca22af635abd9/Screenshots/global-naming-policies.jpg)
В разделе `Source code → Code Formatting → C# source code` выставляем `Policy: Touchin`
![](https://github.com/gaech/monodevelop-settings/raw/2622dd2c61fe2cb0cbf9cd8220285ac95ab7c199/Screenshots/global-code-formating.jpg)
В разделе `Source code → Name Conventions` выставляем `Policy: Touchin` (для Monodeveop 2.8 и младше, походу, неактуально)
![](https://github.com/gaech/monodevelop-settings/raw/014f6c45b1b40f69aeba8641a3cca22af635abd9/Screenshots/global-name-convention.jpg)
Для того чтобы MonoDevelop выделял места, где нарушается соглашение о кодировании, можно включить анализ кода `Other → Source Analysis`
![](https://github.com/gaech/monodevelop-settings/raw/b2c2185b757fb934668d73ae1a79c9ad76448059/Screenshots/source-analysis.jpg)
Настройки будут влиять на новые проекты и решения. В существующих надо изменить настройки вручную.
Если по какой-то причине вы не хотите использовать все общие настройки, то можно скопировать отдельно нужны вам файлы.
## Обновление настроек
```bash
cd ~/Library/MonoDevelop-3.0/
git pull origin master
```
Пользователи Windows делают почти то же самое, но в другую папку, и потом ручками заново копируют нужные настройки в AppData.
## Как поделиться своими наработками?
* Сделать fork проекта. Для этого достаточно нажать кнопку Fork на этой странице.
* Склонировать форк.
* Закоммитить свои изменения.
* Отправить изменения в основной репозиторий. Это делается с помощью кнопки Pull request.
## Ссылки
* https://github.com/gaech/coding-style
## TODO
* Подсказка по хоткеям MonoDevelop
* Подсказка по шаблонам кода