엔커즈

ncurses
엔커즈
Linux-menuconfig.png
ncurs 기반 메뉴구성
개발자토마스 E.딕키
초기 릴리즈1993; 29년 전 (1998년)
안정적 해제
6.3[1] / 2021년 10월 21일; 4개월(2021-10-21)
리포지토리
기록 위치C
운영 체제포식스
유형위젯 툴킷
면허증X11 라이선스[2]
웹사이트invisible-island.net/ncurses/ Edit this at Wikidata

ncurs(new bests)는 프로그래머가 문자 기반 사용자 인터페이스를 단말 독립적으로 작성할 수 있는 응용 프로그램 프로그래밍 인터페이스(API)를 제공하는 프로그래밍 라이브러리다.단말기 에뮬레이터 아래에서 구동되는 'GUI 유사' 애플리케이션 소프트웨어 개발을 위한 툴킷이다.또한 원격 을 사용할 때 경험하는 대기 시간을 줄이기 위해 화면 변경을 최적화한다.

ncurs는 System V Release 4.0(SVR4) 저주의 무료 소프트웨어 에뮬레이션이다.

에이다,[3] 파이톤,[4] 감바스,[5] 루비,[6] PHP,[7] 자바스크립트,[8] 등 다양한 프로그래밍 언어의 ncurs 바인딩이 있다.[9]

역사

ncurs는 새로운 버전으로 System V Release 4.0(SVR4) 저주의 무료 소프트웨어 에뮬레이션으로, 그 자체가 단종된 4.4 BSD 저주에 대한 강화였다.[10]X/Open에 의해 발행된 XSI 저주 표준은 명시적으로 시스템 V에 밀접하게 모델링되어 있다.

욕지거리를 하다

최초의 저주 도서관은 1980년경 BSD 운영 체제를 위해 버클리 캘리포니아 대학교에서 문자 기반 어드벤처 게임인 로그(Rogue)를 지원하기 위해 개발되었다.원래는 vi 편집기와 같은 다른 프로그램에서 사용되었던 용어 캡 라이브러리라는 용어를 사용했다.[10]

BSD 저주 라이브러리의 성공으로 Bell Labs는 System V Release 2 Unix 시스템에 강화된 저주 라이브러리를 출시하게 되었다.이 도서관은 더 강력했고, 용어 캡을 사용하는 대신에 종말론을 사용했다.그러나, 소스 코드 배포에 관한 AT&T 정책으로 인해, 이 개선된 저주 도서관은 BSD 커뮤니티에서 그다지 받아들여지지 않았다.[10]

잔주름

1982년경, 파벨 커티스는 1986년까지 다양한 사람들에 의해 유지되었던 벨 연구소 저주라는 이름의 프리웨어 복제에 대한 연구를 시작했다.[11]

엔커즈

1991년 말 제이드 벤-할림이 개발 노력을 이어받으면서 이 도서관은 더욱 개선되었다.[10][11][12]새 도서관은 1993년 11월에 ncurs로 발매되었으며, 첫 번째 주요 발매물로 버전 1.8.1이 나왔다.후속 작업은 버전 1.8.8 (M1995)을 통해 Eric S에 의해 추진되었다. 쥬르겐 파이퍼가 쓴 형식과 메뉴 라이브러리를 추가한 레이먼드.[13]1996년부터 토마스 E에 의해 유지되고 있다. 디키.[11]

대부분의 ncurs 전화는 쉽게 옛 욕설로 연결될 수 있다.시스템 V 저주 구현은 재컴파일만으로도 BSD 저주 프로그램을 지원할 수 있다.[14]그러나 옛 욕설에는 상대가 존재하지 않기 때문에 단말기 크기 조정 등 일부 영역은 문제가 있다.

터미널 데이터베이스

ncurs는 terminfo(확장 가능한 데이터 포함) 또는 termcap을 사용할 수 있다.다른 저주의 실행은 일반적으로 terminfo를 사용한다; 소수자는 termcap을 사용한다.거의 (mytinfo가 더 오래된 예외였다[15]) 이 두 가지를 모두 사용하는 사람은 없다.

면허증

Ncurs는 GNU 프로젝트의 일부분이지만 GNU GPL 또는 LGPL에 따라 배포되지 않는다.대신, 그것은 허용 가능한 자유 소프트웨어 라이센스, 즉 MIT 라이센스에 따라 배포된다.[16]이는 개발자들이 저작권을 부여할 당시 자유소프트웨어재단과 맺은 협약 때문이다.

FSF에 권리를 넘기기로 합의했을 때 다음과 같은 조항이 있었다.[16]

재단은 재단의 모든 배포 또는 "포장에 근거한" 작업의 배포는 해당 조항이 적용되는 작업의 사본을 소유하는 모든 사람에게 명시적이고 영구적으로 허용하며 이 조항들에 대한 정확한 통지를 소유할 것을 약속한다.o 같은 조건으로 그 작품의 사본을 아무에게나 재배포하다.

관리인 토마스 E에 따르면.Dickey, 이것은 도서관과 연결할 수 있는 프로그램에 제한을 가하기 때문에 어떤 버전에서도 GPL로의 유물화를 금지한다.[16]

ncurs를 사용한 프로그램

ncurs를 사용하는 프로그램은 수백 개가 있다.[17][18]GNU 화면, w3m 등 일부에서는 termcap 인터페이스만 사용하고 스스로 화면 관리를 수행한다.GNU 미드나잇 커맨더YaST와 같은 다른 사람들은 저주 프로그래밍 인터페이스를 사용한다.

참고 항목

참조

  1. ^ "Announcing ncurses 6.3". Retrieved November 11, 2021.
  2. ^ "NCURSES — Licensing". Retrieved July 9, 2013.
  3. ^ "Ada95 Binding for ncurses".
  4. ^ "Curses Programming with Python - Python documentation".
  5. ^ "gb.ncurses - Gambas Wiki".
  6. ^ "ncurses Ruby - RubyGems.org".
  7. ^ "Ncurses functions - PHP Manual".
  8. ^ "nc plugin: ncurses bindings for SpiderApe".
  9. ^ "Curses::UI - A curses based OO user interface framework".
  10. ^ a b c d Eric S. Raymond (September 1995). "ncurses: Portable Screen-Handling for Linux". Linux Journal.
  11. ^ a b c Thomas E. Dickey (December 1996). "NCURSES - New Curses".
  12. ^ ncurs 1.8.1의 README 파일에는 "v0.1 1992년 7월 31일"과 "v1.8.1 1993년 11월 5일"이 명시되어 있으며, NCURES(changelog) 파일과 동의한다.
  13. ^ "NCURSES - Frequently Asked Questions (FAQ): Who wrote NCURSES?".
  14. ^ "A Hacker's Guide to Ncurses Internals".
  15. ^ Sydney S. Weinstein (April 1993). "On the Networks". C/C++ Users Journal. Archived from the original on 2014-08-11. Retrieved 2017-09-15.
  16. ^ a b c "NCURSES - Frequently Asked Questions (FAQ): Is it GPL'd?".
  17. ^ "Search results: +ncurses on freshmeat.net". Archived from the original on February 18, 2012. Retrieved 2013-05-10.
  18. ^ "Projects tagged 'ncurses'". ohloh.

외부 링크