Visual studio изменить шрифт в консоли
Консольные приложения до сих пор остаются наиболее востребованным видом приложений, большинство разработчиков оттачивают архитектуру и бизнес-логику именно в консоли. При этом они нередко сталкиваются с проблемой локализации - русский текст, который вполне адекватно отражается в исходном файле, при выводе на консоль приобретает вид т.н. "кракозябр".
В целом, локализация консоли Windows при наличии соответствующего языкового пакета не представляется сложной. Тем не менее, полное и однозначное решение этой проблемы, в сущности, до сих пор не найдено. Причина этого, главным образом, кроется в самой природе консоли, которая, являясь компонентом системы, реализованным статическим классом System.Console, предоставляет свои методы приложению через системные программы-оболочки, такие как командная строка или командный процессор (cmd.exe), PowerShell, Terminal и другие.
По сути, консоль находится под двойным управлением - приложения и оболочки, что является потенциально конфликтной ситуацией, в первую очередь в части использования кодировок.
Данный материал не предлагает строгий алгоритм действий, а направлен на описание узловых проблем, с которыми неизбежно сталкивается разработчик локализованного консольного приложения, а также некоторые возможные пути их разрешения. Предполагается, что это позволит разработчику сформировать стратегию работы с локализованной консолью и эффективно реализовать существующие технические возможности, большая часть которых хорошо описана и здесь опущена.
Виды консолей
В общем случае функции консоли таковы:
управление операционной системой и системным окружением приложений на основе применения стандартных системных устройств ввода-вывода (экран и клавиатура), использования команд операционной системы и/или собственно консоли;
запуск приложений и обеспечение их доступа к стандартным потокам ввода-вывода системы, также с помощью стандартных системных устройств ввода-вывода.
Отдельным видом консоли можно считать консоль отладки Visual Studio (CMD-D ).
Конфликт кодировок
Полностью локализованная консоль в идеале должна поддерживать все мыслимые и немыслимые кодировки приложений, включая свои собственные команды и команды Windows, меняя "на лету" кодовые страницы потоков ввода и вывода. Задача нетривиальная, а иногда и невозможная - кодовые страницы DOS (CP437, CP866) плохо совмещаются с кодовыми страницами Windows и Unicode.
Совет 1. Выполнять разработку текстовых файлов (программных кодов, текстовых данных и др.) исключительно в кодировке UTF-8. Мир любит Юникод, а кроссплатформенность без него вообще невозможна.
Совет 2. Периодически проверять кодировку, например в текстовом редакторе Notepad++. Visual Studio может сбивать кодировку, особенно при редактировании за пределами VS.
Поскольку в консоли постоянно происходит передача управления от приложений к собственно командному процессору и обратно, регулярно возникает "конфликт кодировок", наглядно иллюстрируемый таблица 1 и 2, сформированных следующим образом:
Команды и код приложения под катом
> Echo ffffff фффффф // в командной строке
PS> Echo ffffff фффффф // в PowerShell
PS> Echo ffffff . // так выглядит та же команда в Windows PowerShell
код тестового приложения:
Командную часть задания все консоли локализовали практически без сбоев во всех кодировках, за исключением: в WPS неверно отображена русскоязычная часть команды во всех кодировках.
Табл. 1. Результат выполнения команды консоли Echo ffffff фффффф
Вывод тестового приложения локализован лишь в 50% испытаний, как показано в табл.2.
Табл. 2. Результат запуска приложения LoggingConsole.Test
Сoвет 3. Про PowerShell забываем раз и навсегда. Ну может не навсегда, а до следующей мажорной версии.
По умолчанию Windows устанавливает для консоли кодовые страницы DOS. Чаще всего CP437, иногда CP866. Актуальные версии командной строки cmd.exe способны локализовать приложения на основе русифицированной кодовой страницы 866, но не 437, отсюда и изначальный конфликт кодировок консоли и приложения. Поэтому
Совет 4. Перед запуском приложения необходимо проверить кодовую страницу консоли командой CHCP и ей же изменить кодировку на совместимую - 866, 1251, 65001.
Проблемы консолей Visual Studio
В Visual Studio имеется возможность подключения консолей, по умолчанию подключены командная строка для разработчика и Windows PowerShell для разработчика. К достоинствам можно отнести возможности определения собственных параметров консоли, отдельных от общесистемных, а также запуск консоли непосредственно в директории разработки. В остальном - это обычные стандартные консоли Windows, включая, как показано ранее, установленную кодовую страницу по умолчанию.
Отдельной опцией Visual Studio является встроенная односеансная консоль отладки, которая перехватывает команду Visual Studio на запуск приложения, запускается сама, ожидает компиляцию приложения, запускает его и отдает ему управление. Таким образом, отладочная консоль в течение всего рабочего сеанса находится под управлением приложения и возможность использования команд Windows или самой консоли, включая команду CHCP, не предусмотрена. Более того, отладочная консоль не воспринимает кодовую страницу по умолчанию, определенную в реестре, и всегда запускается в кодировке 437 или 866.
Совет 6. Тестирование приложения целесообразно выполнять во внешних консолях, более дружелюбных к локализации.
Анализ проблем консолей был бы не полон без ответа на вопрос - можно ли запустить консольное приложение без консоли? Можно - любой файл ".exe" запустится двойным кликом, и даже откроется окно приложения. Однако консольное приложение, по крайней мере однопоточное, по двойному клику запустится, но консольный режим не поддержит - все консольные вводы-выводы будут проигнорированы, и приложение завершится
Локализация отладочной консоли Visual Studio
Отладочная консоль - наиболее востребованная консоль разработчика, гораздо более удобная, чем внешняя консоль, поэтому резонно приложить максимум усилий для ее локализации.
На самом деле, правильнее говорить о локализации приложения в консоли - это важное уточнение. Microsoft по этому поводу высказывается недвусмысленно: "Programs that you start after you assign a new code page use the new code page. However, programs (except Cmd.exe) that you started before assigning the new code page will continue to use the original code page". Иными словами, консоль можно локализовать когда угодно и как угодно, но приложение будет локализовано в момент стабилизации взаимодействия с консолью в соответствии с текущей локализацией консоли, и эта локализация сохранится до завершения работы приложения. В связи с этим возникает вопрос - в какой момент окончательно устанавливается связь консоли и приложения?
Важно! Приложение окончательно стабилизирует взаимодействие с консолью в момент начала ввода-вывода в консоль, благодаря чему и появляется возможность программного управления локализацией приложения в консоли - до первого оператора ввода-вывода.
Ниже приведен пример вывода тестового приложения в консоль, иллюстрирующий изложенное. Метод Write получает номера текущих страниц, устанавливает новые кодовые страницы вводного и выводного потоков, выполняет чтение с консоли и записывает выводную строку, содержащий русский текст, в том числе считанный с консоли, обратно в консоль. Операция повторяется несколько раз для всех основных кодовых страниц, упомянутых ранее.
приложение запущено в консоли с кодовыми страницами 1251 (строка 2);
приложение меняет кодовые страницы консоли (current, setted);
приложение остановлено в консоли с кодовыми страницами 1252 (строка 11, setted);
по окончании работы приложения изменения консоли сохраняются (строка 14 - Active codepage 1252);
Приложение адекватно локализовано только в случае совпадения текущих кодовых страниц консоли (setted 1251:1251) с начальными кодовыми страницами (строки 8 и 10).
Совет 7. Обязательный и повторный! Функции SetConsoleCP должны размещаться в коде до первого оператора ввода-вывода в консоль.
Стратегия локализации приложения в консоли
Удалить приложение PowerShell (если установлено), сохранив Windows PowerShell;
Установить в качестве кодовую страницу консоли по умолчанию CP65001 (utf-8 Unicode) или CP1251 (Windows-1251-Cyr), см. совет 5;
Разработку приложений выполнять в кодировке utf-8 Unicode;
Контролировать кодировку файлов исходных кодов, текстовых файлов данных, например с помощью Notepad++;
Реализовать программное управление локализацией приложения в консоли, пример ниже под катом:
Есть ли способ изменить размер шрифта среды в Visual Studio Code? Такие вещи, как окно IntelliSense, панель отладки, имена файлов и т. Д.
Я знаю, как изменить размер шрифта редактора, но не могу понять, как изменить размер шрифта среды. Так что мне интересно, можете ли вы это как-то изменить.
В настоящее время невозможно изменить семейство шрифтов или размер вне редактора. Однако вы можете увеличивать и уменьшать масштаб всего пользовательского интерфейса из меню View .
Обновление для нашей версии VS Code 1.0:
Недавно введенная настройка window.zoomLevel позволяет навсегда сохранить уровень масштабирования! Он может иметь как отрицательные, так и положительные значения для увеличения или уменьшения.
Просто скопируйте "editor.fontSize": 18 в свой setting.json редактора.
Нажатие Control + Shift + P , а затем ввод «настроек» позволит вам легко найти файл настроек пользователя или рабочего пространства.
В Visual Studio Code, нажав Ctrl + и Ctrl - , вы можете изменить общий размер шрифта IDE. . Это помогает быстрее, чем изменение настроек в каждом сеансе. Надеюсь, это поможет.
Попробуйте поиграть с комбинацией следующих пользовательских настроек:
По состоянию на середину 2017 г. Для быстрого перехода к файлам настроек нажмите ctrl + shift + p и введите >, там вы найдете пользовательские настройки и настройки рабочей области, имейте в виду, что настройки рабочей области переопределят пользовательские настройки , поэтому лучше использовать последние напрямую, чтобы внести глобальные изменения (рабочая область settings создаст папку в корне вашего проекта), оттуда у вас будет возможность добавить параметр "editor.fontSize": 14 в свои настройки в качестве быстрого предложения, но вы можете сделать это самостоятельно и изменить значение на желаемый размер шрифта .
выберите "пользовательские настройки"
добавить "editor.fontSize": 14
Вы можете Увеличить и Уменьшить весь пользовательский интерфейс в меню "Просмотр".
Сейчас я использую версию 1.21.1 , и там, в меню просмотра , вы можете получить опции «Увеличить» и «Уменьшить», которые являются вторыми и третьими последними вариантами. Вы можете сделать это, используя Ctrl + + и Ctrl + - .
Вы можете сбросить масштаб в любой момент, выбрав параметр Сбросить масштаб .
После нажатия Control + Shift + P , как было предложено @Edwin:
- Затем «Поместите свои настройки в файл справа, чтобы перезаписать . настройки по умолчанию и пользовательские настройки» или щелкните вкладку «Пользовательские настройки», чтобы настроить window.zoomLevel, если это желаемое действие.
Согласно журналу изменений версии 1.2, были добавлены новые команды для увеличения и уменьшения масштаба только шрифта, но всего пользовательского интерфейса.
Используйте следующие сочетания клавиш для замены действий глобального масштабирования по умолчанию:
В Windows и Linux:
У меня установлен на "editor.fontSize": 12,
Сохраните файл, вы сразу увидите эффект.
Наслаждайтесь!
Простой подход к изменению размера шрифта в рабочей среде Visual Studio:
Перейти : Файл -> Настройки -> Настройки ИЛИ Нажмите CTRL + , т.е. CTRL + ЗАПЯТАЯ.
Откроется settings.json .
Здесь вы можете увидеть 3 вкладки:
- Пользовательские настройки
- Настройки рабочего пространства
- Настройки папки
Перейдите в Настройки пользователя и добавьте это:
Теперь просто сохраните и закройте файл.
В приведенном выше коде 16 представляет размер шрифта. Увеличение или уменьшение по вашему желанию.
(VS Code 1.33.1 в Windows 7)
Масштабировать все (пользовательский интерфейс и редактор): CTRL + + , CTRL + - .
Редактор масштабирования: CTRL + колесо мыши.
Смотрите ниже, как я это исправил.
Как предлагает @Edwin: нажатие Control + Shift + P и последующий ввод «настроек» позволит вам легко найти файл настроек пользователя или рабочего пространства.
Мой файл настроек находится здесь: "C: \ Users \ You_user \ AppData \ Roaming \ Code \ User \ settings.json"
Мой файл выглядит так:
В Visual Studio Code размер шрифта можно легко изменить на вкладке «Параметры».
Самый простой способ сделать это - нажать Ctrl + Shift + P и затем ввести «Настройки». Это покажет вам несколько результатов. Выберите «Настройки (UI)». В редакторе откроется вкладка Настройки. Теперь вы можете изменить настройки шрифта здесь. Это повлияет только на шрифт редактора.
Или вы также можете щелкнуть значок настроек в левой нижней части окна и выполнить поиск шрифта оттуда.
Чтобы изменить размер шрифта всего окружения, вы можете рассмотреть возможность нажатия ctrl + + . Это будет работать как увеличение всей среды, что приведет к увеличению размера шрифта.
Мне потребовалось много времени, чтобы понять, что я случайно сделал, когда мое окно кода стало огромным:
Уменьшить = Ctrl + Shift + , (запятая)
Увеличение = Ctrl + Shift + . (точка / период)
На самом деле это вообще не ответ на заданный вопрос, но я думаю, что кто-то вроде меня окажется здесь из-за симптомов!
На данный момент (март 2018 г.) и версии 1.21.0 вы можете перейти в «Настройки», выполнить поиск по запросу «масштабирование» и изменить "editor.mouseWheelZoom": false , которое по умолчанию является ложным, на true . Это позволит увеличивать / уменьшать масштаб VS Code с помощью кнопки управления и мыши - ctrl + scrollUp/scrollDown . Чтобы изменить fontSize общего рабочего пространства / экрана VS Code, см. Ответ Alegozalves выше.
Нажмите Ctrl и используйте колесико мыши для увеличения или уменьшения .
Одновременно нажмите Ctrl , Shift , P , появится меню, найдите Editor Zoom in . После его выбора шрифт в какой-то степени станет больше.
есть ли способ изменить размер шрифта среды в коде Visual Studio? такие вещи, как intellisense box, панель отладки, имена файлов ..так далее.
Я знаю, как изменить размер шрифта редактора, но я не мог найти, как изменить размер шрифта среды, поэтому мне интересно, можете ли вы его как-то изменить
В настоящее время невозможно изменить семейство шрифтов или размер вне редактора. Однако вы можете увеличить весь пользовательский интерфейс В и из .
обновление для нашей версии VS Code 1.0:
недавно введен параметр window.zoomLevel позволяет сохранить уровень масштабирования навсегда! Он может иметь как отрицательные, так и положительные значения для увеличения или уменьшения масштаба.
просто скопировать "editor.fontSize": 18 в своем setting.json редактора.
клавишей управления + Shift + P а затем набрав "настройки", вы сможете легко найти файл настроек пользователя или рабочего пространства.
в коде Visual Studio, нажав Ctrl + и Ctrl - вы можете изменить общий размер шрифта IDE. Это помогает быстрее, чем изменение настроек в каждом сеансе. Надеюсь, это поможет.
ctrl + shift + p
выберите "Настройки пользователя"
добавить "editor.fontSize": 14
У меня есть мой набор в "editor.fontSize": 12,
сохраните файл, вы увидите эффект сразу.
наслаждайтесь !
- Настройки Пользователя
- Настройки Рабочего Пространства
- Параметры Папок
вы можете увеличение и уменьшение весь пользовательский интерфейс в меню Вид.
сейчас я использую версия 1.21.1 и в меню Вид вы можете получить опцию увеличения и уменьшения масштаба, которые являются 2-й и 3-й последние варианты. Вы можете сделать это с помощью Ctrl + + и Ctrl + - .
вы можете сбросить масштаб в любое время, выбрав Сброс Масштабирования выбор.
на данный момент (март 2018) и версия 1.21.0, вы можете перейти к настройкам, поиск "масштаб" и изменить "editor.mouseWheelZoom": false значение false по умолчанию для true . Это позволит увеличить / уменьшить масштаб кода VS с помощью кнопки управления и мыши - ctrl + scrollUp/scrollDown . Для изменения fontSize из общего рабочего пространства / экрана VS Code, обратитесь к ответу Alegozalves выше.
попробуйте поиграть с комбинацией следующих пользовательских настроек:
вы можете найти то, что вы хотите в настройках.json из меню настроек. Microsoft дает формиат Настройки Настройки в их сайт.
Итак, какой шрифт по умолчанию для редактора кода Visual Studio во всех средах (Ubuntu, MAC OS и Windows)? И как я могу это изменить?
Шрифт, используемый для заголовков вкладок, меню и другого текста, который является частью самого кода VS, в отличие от содержимого, такого как код в редакторе, в настоящее время является Arial.Перейти к Preferences > User Settings . (В качестве альтернативы Ctrl + , / Cmd + , в macOS)
Затем вы можете ввести в объект JSON любые параметры, которые вы хотите переопределить. Пользовательские настройки для каждого пользователя. Вы также можете настроить параметры рабочего пространства для проекта, над которым вы сейчас работаете.
Знаете ли вы настройки шрифта по умолчанию (семейство, размер, вес), которые использует VSCode, если ничего не установлено? я считаю, что это Монако, и размер, кажется, между 12 и 13 Это просто для того, чтобы подтвердить, что в Windows 8.1 шрифтом является Monaco, и по крайней мере на моем экране 3200x1800 размер шрифта по умолчанию равен 14. Вот сравнение с Monaco 14 в Intellij Idea (код синий):! Код / Идея ничего не делает . вижу все тот же шрифт. Нужно ли принудительно обновлять настройки? Например, перезапустить vscode? даже после перезапуска без изменений Как только вы сохраните его, если он не изменится, обязательно перезапустите код Visual Studio. Есть два места, которые вам могут понадобиться, чтобы изменить это. Одним из них является Файл -> Настройки -> Настройки. Другое - если у вас есть папка .vscode, то под ней будет файл settings.json.В настройках по умолчанию VS Code использует следующие шрифты (14 пт) в порядке убывания:
- Монако
- Менло
- Consolas
- "Droid Sans Mono"
- "Inconsolata"
- "Новый Курьер"
- моноширинный (резервный)
Как проверить: VS Code запускается в браузере. В первой версии вы можете нажать F12, чтобы открыть Инструменты разработчика. Осматривая DOM, вы можете найти несколько строк, составляющих эту строку кода. Изучив один из этих диапазонов, вы увидите, что font-family - это просто список выше.
Читайте также: