강조 표시된 텍스트 주위에 강조된 가장자리를 표시하는이 터미널 창 그래픽 트릭의 이름은 무엇입니까?


19

상태 표시 줄이나 강조 표시 된 선 주위에 얇은 강조 표시 된 가장자리를 보여주는 온라인 터미널 창의 스크린 샷을 발견했습니다. 다음 예제에서는 1, 5 및 389 행 주위의 연한 회색 테두리를 확인하십시오.

여기에 이미지 설명을 입력하십시오

이 예에서는 Emacs 모드 라인 (상태 표시 줄) 주위의 노란색 테두리를 확인하십시오.

여기에 이미지 설명을 입력하십시오

이 효과의 이름은 무엇이며 OS X 10.10의 iTerm 2에서 가능합니까?

최신 정보

Emacs Customize 인터페이스 테마 코드 를 조사하고 파헤친 후 가장자리를 정의한 코드를 찾았습니다. Emacs의 용어에서는이라고 :box하며 그 속성 중 하나는 line-width입니다. 다음은 테마에 정의 된 상자 선의 예입니다.

'(modeline ((t (:background "Gray10" :foreground "SteelBlue" :box (:line-width 1 :style none) :width condensed))))

이 설명서 :box는 Emacs 매뉴얼의 face 속성 documentation 에서 찾을 수 있지만 작동 방식이나 지원되는 터미널은 언급하지 않았습니다.

나는 이것이 Emacs의 GUI 버전 ( Aquamacs 와 같은)의 특별한 기능이라고 생각하기 시작 했지만 비슷한 상자 강조 표시가있는 Ubuntu Unity 터미널 창으로 보이는 스크린 샷을 보았습니다.


이 스크린 샷은 터미널이 아닌 X에서 실행되는 emacs입니다.
— casey

답변:


3

당신이보고있는 효과는 터미널 윈도우 그래픽 트릭이 아니며 X에서 실행되는 gui emacs입니다. emacs가 그릴 수 있도록 사용자 정의를 올바르게 식별하지만 emacs가 X에서 실행될 때만 렌더링됩니다.

예를 들어, 모드 라인 테마는 다음과 같습니다.

 '(mode-line ((t (:background "gray10" :foreground "green" :box (:line-width -1 :style released-button)))))

emacs가 그래픽으로 실행될 때 (예 emacs:) 다음과 같이 렌더링됩니다.

여기에 이미지 설명을 입력하십시오

emacs가 터미널 (예 :)에서 실행될 때 다음과 emacs -nw같이 렌더링됩니다.

여기에 이미지 설명을 입력하십시오

상자에 의해 정의 된 인상 된 모양을주는 픽셀 경계 효과는 GUI 모드에서만 렌더링됩니다. 터미널 모드에서는 단순한 효과입니다.

마찬가지로 게시 한 그림은 gui emacs에서 가져온 것이며 효과는 터미널 에뮬레이터의 속성이 아니며 해당 렌더링에 관련된 터미널 에뮬레이터도 아닙니다.


1
예, 또한 스크린 샷이 GUI 버전에서 나온 것으로 의심됩니다. 최근에 터미널 에뮬레이터에서 사용 가능한 문자 변환 목록을 포함하도록 답변을 수정했습니다. 그리고 여기에는 OP가 요청한 내용이 포함되지 않았습니다.
— Alex Stragies

마치 "릴리스 버튼"스타일 상자는 위쪽 가장자리에만 선을 표시하는 것처럼 보이지만 OP의 스크린 샷에서는 해당 선이 모드 선의 모든면에 나타납니다. 질문을 오해 했습니까?
— ksoo

3

이 Wikipedia 페이지를 이해하는 방법 (이 특정 문제에서 잘못 입증되고 싶지는 않지만) :

  • 커서에 국한되지 않는 스타일 밑줄 이 있습니다. 그들은 그것을 코드 4라고 부릅니다.
  • Styled Framed 는 각 문자 주위의 4 개 테두리와 같이 코드 51이라고합니다.

참고 : 문자 사이 에 테두리 가 없는 문자열을 프레임 화 할 수는 없습니다 . Lisa첫 번째 스크린 샷 에서처럼

따라서 2015 년 중반 현재 내 대답은 다음과 같습니다.

(현재) 터미널 에뮬레이터는 원하는 방식으로 문자 주위에 선택 사항 인 컬러 테두리를 표시 할 수 없습니다.

여기서 ANSI 코드가 적용되는 모습을 볼 수 있습니다.

터미널 에뮬레이터를 기반으로하지 않는 gvim 및 xemacs와 같은 응용 프로그램은 현재 터미널 에뮬레이터의 제한 사항에 구속되지 않습니다. 스크린 샷은 GUI 응용 프로그램에서 가져온 것 같습니다.

다시 말하지만, 나는 그런 형식을 내 도트 파일 사용자 정의에 행복하게 통합하기 때문에 이것에 대해 틀린 것으로 입증되고 싶습니다.


1
xemacs는 emacs의 포크이며 ( "X에서는 emacs"가 아님) 일반 emacs는 X에서 그래픽으로 실행될 수 있습니다.
— casey
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.