태그 보관물: ide

ide

누구든지 비례 글꼴을 선호합니까? [닫은] 표 형식은

프로그래밍 스타일에 대한 wikipedia 기사를 읽고 수직 정렬 코드에 대한 논쟁에서 무언가를 발견했습니다.

고정 폭 글꼴에 의존 표 형식은 편집기가 고정 너비 글꼴을 사용한다고 가정합니다. 대부분의 최신 코드 편집기는 비례 글꼴을 지원하며 프로그래머는 가독성을 위해 비례 글꼴을 사용하는 것을 선호 할 수 있습니다 .

솔직히 말해서 비례 글꼴을 선호하는 프로그래머를 만난 적이 없다고 생각합니다. 그것들을 사용하는 이유도 생각할 수 없습니다. 왜 누군가가 비례 글꼴을 선호합니까?



답변

비례 글꼴에 대한 공통점은 논평했다.

  • 비례 글꼴을 사용하여 코드를 세로로 정확하게 정렬 할 수 없습니다. 모두가 탄력있는 tabstops를 사용하고 있다면 슬프게도 비례 글꼴과 코드를 정확하게 세로로 정렬 할 수 있습니다
  • 일부 비례 글꼴로 인해 일부 문자 그룹을 구별하기가 어렵습니다. (예 : mrnm). 그러나 모든 프로그래밍 글꼴이 완벽한 것은 아닙니다. Courier New는 동일한 ‘O’와 ‘0’및 동일한 ‘1’과 ‘l’을 갖 습니다 .
  • 일부 IDE는 앞에서 언급 한 Visual Studio 또는 Python의 IDLE 과 같이 고정 너비가 아닌 글꼴을 제대로 지원하지 않습니다 . 일부 상황에서는 사용할 수 없습니다. (예 : 터미널)
  • 코딩을 위해 비례 글꼴을 선택하면 끝없는 거룩한 전쟁에 빠지게됩니다. 그러나 키보드와 의자 사이에 문제가 있습니다.

비례 글꼴을 선호하는 포인트

개인적으로 나는 ‘Ubuntu’글꼴 과 WenQuanYi Zen Hei Mono를 모두 즐겁게 사용했으며 서로를 선호하지 않습니다. 🙂



Ubuntu 10과 WenQuanYi Zen Hei Mono 9를 비교했습니다. 당신이 저에게 물어 보면 여기에 확실한 승자가 없습니다.

즉, 글꼴은 음식과 같습니다. 일부는 잘 둥글고, 일부는 뜨겁고 매운 것 같습니다. 올바른 글꼴이 없거나 지금은 모두 사용할 것입니다. 선택을위한 예!


답변

코딩에 모노 스페이스 이외의 글꼴을 사용하는 것이 실질적으로 불가능한 이유가 있지만 다른 답변에서는 언급되지 않았습니다 : 사각형 선택 .

평범한 텍스트로 작업 할 때 유용하지 않고 알려지지 않은이 기능은 개발자에게 필수적입니다. //여러 줄에서 주석 제거 , 괄호 또는 기타 문자 추가 등 다양한 시나리오를 상상할 수 있습니다 . Visual Studio 2010에서와 같이 텍스트를 선택하고 제거 할 수없는 고급 사각형 선택을 지원하면 더욱 유용합니다. 선택하고 교체하십시오.

예를 들어 보자.

private IEnumerable<SELove> StackExchangeRocks()
{
    var howILoveSEWebsites = new []
    {
        new SELove { SiteName = "Stack Overflow", MyReputation = 5269,  MyRating = Rating.Outstanding, },
        new SELove { SiteName = "Programmers",    MyReputation = 16937, MyRating = Rating.Outstanding, },
        new SELove { SiteName = "Super User",     MyReputation = 650,   MyRating = Rating.QuiteGood,   },
        new SELove { SiteName = "Server Fault",   MyReputation = 489,   MyRating = Rating.Good,        },
        // Initialize other websites here.
    };

    return howILoveSEWebsites.OrderByDescending(c => c.MyRating);
}

private class SELove
{
    public string SiteName { get; set; }
    public int MyReputation { get; set; }
    public Rating MyRating { get; set; }
}

private enum Rating
{
    Outstanding,
    Good,
    QuiteGood,
}

이 레거시 코드에서 코드 내 등급을 Stack Exchange 웹 사이트 자체에서 내 등급을로드하고 항상 최신 데이터를 보유 할 수있는 방법으로 교체하고 싶습니다. MyReputation속성 을 리팩터링하기 시작 했으며 이제 범위 내에서 초기화를 제거하고 싶습니다. 내가 4 개가 아니라 84 개의 SE 웹 사이트를 모두 가지고 있다고 상상해보십시오.

모노 스페이스 글꼴 인 Consolas를 사용할 때 발생하는 상황은 다음과 같습니다 . Backspace를 누르면 나머지는 실제로 유용한 작업을 수행하는 데 남은 시간을 할애 할 수 있습니다.

그리고 여기 Segoe UI 와 같은 것입니다 . 아야!


답변

나는 비례 글꼴을 주로 사용했는데, 구두점은 실제로 구별하기가 더 쉽기 때문에 시간이 지남에 따라 아무도 그것을하지 않고 모든 사람이 무의식적으로 단 간격 글꼴을 가정하기 때문에 포기했습니다 (wikipedia 기사에서 언급했듯이 표 형식으로 시도) 댓글 형식의 ASCII 아트 등).

또한 Visual Studio의 문제는 Microsoft가 수정하고 싶지 않아 기본적으로 잘 설계된 비례 글꼴을 사용할 수 없게 만듭니다.


답변

개인적으로 상관하지 않습니다. 탭을 정렬하고 글꼴을 읽을 수있게 유지하는 한, 고정 폭, 비례 또는 기타 벽체 간격을 사용하는지는 신경 쓰지 않았습니다. 내 탭을 공백으로 바꾸지 마십시오. 나와 싸우지 않을 것입니다.


답변

나는 비례 글꼴을 사용한다 (Arial은 지금까지 내가 찾은 최고 다. Verdana는 준우승자이다). 솔직히 나는 여전히 사람들이 고정 폭 글꼴을 사용하는 것을 좋아한다. 왜 그런 가독성을 희생하고 싶습니까? 표 형식이 바람직한 지 이해할 수는 있지만 글꼴에 관계없이 유지 보수의 악몽을 일으키기 때문에 바람직하지 않습니다.


답변

나는 Bjarne Stroustrup의 저서 C ++ 프로그래밍 언어 , 확률 적으로 간격을 둔 글꼴이 코드에 사용되었다는 것을 기억 합니다. (웹에서 샘플 페이지를 찾을 수 없습니다)

나는 정확한 이유를 기억하지 못하지만, 그가이 책에서 새로운 소개 로 이것을 바꾸고 다른 변화 (C ++ 언어 자체)를 언급했다고 생각합니다 .

개인적으로 저는 고정 된 공간을 선호합니다. Consolas는 내가 가장 좋아하는 것입니다.


답변

짧은 줄과 열린 공간이 많은 언어의 경우 고정 폭 글꼴을 선호합니다. 가변 너비 글꼴은 긴 줄과 짙은 구문이있는 경우 가독성을 향상시킬 수 있습니다.

가장 비례적인 글꼴의 문제점은 프로그래밍 용으로 설계되지 않았다는 것입니다. 이 페이지 는 몇 가지 글꼴을 보여줍니다.